Commit Graph

318 Commits

Author SHA1 Message Date
André Pönitz
09df753df4 pimpl not needed here
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21395 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-02 23:42:27 +00:00
Abdelrazak Younes
5ddc612b73 Splitup Font in saner bits:
* Font::FontBits -> FontInfo
* Font::FONT_XXX -> all enums transfered to FontEnums.h and renamed to FontXxx

I've replaced Font uses with FontInfo were the language() member was not needed, basically all draw() and metrics methods. There's one problematic cases with InsetQuotes which I solved by taking the Buffer main language.




git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21240 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-28 18:51:54 +00:00
André Pönitz
ed7a07e007 put \frac style stuff into a single unit. -161477.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21208 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-25 21:53:06 +00:00
Abdelrazak Younes
eea79637c7 Move Color::color enum to ColorCode.h
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21198 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-25 12:41:02 +00:00
André Pönitz
93bd28f040 dissolve Importer 'class' to LyXFunc/Converter
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21195 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-25 06:09:38 +00:00
André Pönitz
e7aa8ce683 cosmetics... less than intented
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21190 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-24 22:55:02 +00:00
André Pönitz
b99433e73b cosmetics
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21157 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-23 21:41:17 +00:00
Bernhard Roider
1a77c867a2 CmdDef.cpp/h: A class that manages command definitions. The definitions are
by default read from lib/commands/default.def 
              A .def file allows to define a command with
              \define "Name" "lfun"
              where Name is the name of the new command and lfun is the code
              to be executed.
              \def_file "FileName"
              allows to include another .def file.
              The implementation of CmdDef is similar to KeyMap, i.e. there is 
              one instance created in the LyX.cpp that reads the .def file, holds 
              a list containing all definitions, and supplies access methods.


LFUN_CALL:    The new lfun is used to execute a command definition, e.g.
              call Name

If a toolbar item has the associated action "call Name" then the image 
lib/images/commands/Name.png is used for the button.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21093 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-20 23:27:03 +00:00
Abdelrazak Younes
4d9007bd61 Introducing FontList.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21062 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-19 14:35:05 +00:00
André Pönitz
f3ac82a8e7 make 'make dist' work again
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21019 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-17 19:59:55 +00:00
André Pönitz
540c2cf1a6 fix typo
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21016 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-17 19:32:46 +00:00
Uwe Stöhr
7075eaadef The huge URL patch:
- rename the lfun to href-insert.png
- rename the files to Hyperlink...
- the former URLUi produces now \href commands (hyperref)

Only missing thing is the lyx2lyx conversion routine - this will be done by Richard

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20950 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-13 19:06:09 +00:00
Abdelrazak Younes
f7b1c86393 Move Inset::Code to InsetCode.h
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20936 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-13 09:04:52 +00:00
Bo Peng
62c98f2ffc InsetInfo: add InsetInfo (core)
* src/insets/Inset.cpp: add InsetInfo
	* src/insets/Inset.h
	* src/insets/InsetInfo.cpp
	* src/insets/InsetInfo.h
	* src/LyXAction.cpp: add LFUN_INFO_INSERT
	* src/lfuns.h
	* src/BufferView.cpp: 
	* src/factory.cpp
	* src/Text3.cpp: insert InsetInfo with selected text
	* development/scons/scons_manifest.py: build tools update
	* src/Makefile.am


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20904 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-11 14:52:00 +00:00
André Pönitz
72344cfbe6 delete controllers dir
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20830 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-07 21:38:06 +00:00
André Pönitz
095cf23394 shuffle some code around
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20706 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-03 18:56:37 +00:00
André Pönitz
19ab5ceef9 s/pkglib_/noinst_/
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20669 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-02 20:34:55 +00:00
André Pönitz
83cf9ed0a9 I don't think that a single function that's only use once should have a
pair of files of its own


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20599 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-29 20:25:50 +00:00
André Pönitz
cd72af583f cosmetics
(maily move layout related enums into a header of there own to remov
include dependencies, alos rename a few things)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20598 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-29 20:02:32 +00:00
André Pönitz
5aaf4dce20 move font related stuff from bufferview_funcs to Font
delete bufferview_funcs, since it's now empty


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20579 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-29 11:00:18 +00:00
André Pönitz
3ff14b8300 Pavel Sanda's "PDFOptions" patch
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20389 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-20 22:31:18 +00:00
André Pönitz
978f65391e reduce #includes
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20363 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-19 22:37:22 +00:00
Alfredo Braunstein
2685780f0c compile fix
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20073 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-05 15:46:20 +00:00
Bo Peng
692363bbca Embedding patch two: read/write embedded files'
*  src/insets/InsetGraphics.h
	*  src/insets/InsetExternal.cpp
	*  src/insets/InsetGraphics.cpp
	*  src/insets/InsetInclude.cpp
	*  src/insets/Inset.h
	*  src/insets/InsetInclude.h
	*  src/insets/InsetExternal.h: register embedded files
	*  src/EmbeddedFiles.h|cpp: core of embedded files
	*  src/Buffer.h|cpp: read/write embed file
	*  src/BufferParams.h|cpp: embedded flag
	*  src/Makefile.am
	*  po/POTFILES.in
	*  development/scons/scons_manifest.py: build system updates


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19924 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-30 20:46:42 +00:00
Richard Heck
8a947f63da This is one of a series of patches that will merge the layout modules development in personal/branches/rgheck back into the tree.
Design goal: Allow the use of layout "modules", which are to LaTeX packages as layout files are to LaTeX document classes. Thus, one could have a module that defined certain character styles, environments, commands, or what have you, and include it in various documents, each of which uses a different document class, without having to modify the layout files themselves. For example, a theorems.module could be used with article.layout to provide support for theorem-type environments, without having to modify article.layout itself, and the same module could be used with book.layout, etc.

This patch adds the backend. The ModuleList class holds a list of the available modules, which are retrieved from lyxmodules.lst, itself generated by configure.py. There are two LFUNs available: modules-clear and module-add, which do the obvious thing; you can test by typing these into the minibuffer, along with the name of one of the available modules: URL (a CharStyle), Endnote (a Custom Inset), and---with the spaces---End To Foot (View>LaTeX and look at the user preamble), which are themselves in lib/layouts. There are some others, too, that allow theorems to be added to classes like article and book.

The GUI will come next.

Issues: (i) The configure.py script could be improved. It'd be nice, for example, if it tested for the presence of the LaTeX packages a particular module needs. But this would mean re-working the LaTeX script, and I don't know how to do that. Note that at present, the packages are ignored. This will change shortly. (ii) I've used std::string in LyXModule, following what seemed to be a precedent in TextClass. If some of these should be docstrings, please let me know, and I'll change them. (iii) There is at present no distinction between LaTeX and DocBook modules. Should there be? That is: Should there be modules that are available when the document class is a LaTeX class and others that are available only when it is DocBook? Or should there just be one set of modules? Each module can of course indicate for what it is suitable in its description.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19893 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-29 17:59:49 +00:00
Richard Heck
6e93e77f22 This is one of a series of patches that will merge the layout modules development in personal/branches/rgheck back into the tree.
Design goal: Allow the use of layout "modules", which are to LaTeX packages as layout files are to LaTeX document classes. Thus, one could have a module that defined certain character styles, environments, commands, or what have you, and include it in various documents, each of which uses a different document class, without having to modify the layout files themselves. For example, a theorems.module could be used with article.layout to provide support for theorem-type environments, without having to modify article.layout itself, and the same module could be used with book.layout, etc.

This first patch does some reworking of the infrastructrue. We need to distinguish between the TextClass that a particular document is using and the layout of that document, since modules, in particular, can modify the layout. The solution adopted here is to add a TextClass pointer to BufferParams, which will hold the layout. The layout itself is then constructed from the TextClass the document is using. At present, this is completely trivial, but that will change when modules are added.

The pointer in question is a boost::shared_ptr. This is needed because CutAndPaste saves a copy of the layout with each cut or copied selection. We cannot assume the selection vanishes when the document is closed, so there are two options: (i) keep a list of all the layouts that have ever been used by any document; (ii) used some kind of smart pointer. The latter seems preferable, as the former would waste memory. More importantly, the use of a smart pointer allows modules to be modified on disk and then reloaded while LyX is running, and it will eventually allow the same for layout files.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19756 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-23 16:41:13 +00:00
Richard Heck
cd772c60a5 Biblio.{h,cpp} --> BiblioInfo.{h,cpp}
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19660 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-20 17:04:36 +00:00
Richard Heck
b3bff4232a Improvements to the citation dialog UI. It is now possible to search particular fields (author, title, etc) and to filter keys by entry types (article, book, etc).
The changes are essentially of three types. 

First, the std::maps previously used here for storing BibTeX data have become full-fledged classes and so what were previously just a bunch of functions have now become methods of these new  classes. This leads to a lot of minor changes in other files, to adapt to the  new signature. The changes in insets/ are mostly of this kind.

Second, there are some slightly more substantial changes in src/insets/InsetBibtex.cpp. We now store lists of the field names and entry types that have been used.

Finally, there are the changes to the citation UI. These are mostly straightforward, though adding the new functionality exposed some inadequacies in the previous code that also had to be fixed.

One other change: BibTeX keys are now docstring. This solves some Unicode issues.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19657 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-20 16:30:02 +00:00
Richard Heck
5bb22d9498 Re-write of the BibTeX representation. The main change is that we now have
a structure representing field->value instead of just a single string with
all the data. The data structures are defined in src/Biblio_typedefs.h, and
the main changes are to the parser code in src/insets/InsetBibtex.cpp.

-src/Biblio_typedefs.h
 Contains typedefs for new representation. Separating them out limits how much 
 gets #include'd by other files, and also resolves a circularity problem with
 Buffer.h.

-src/Biblio.{h,cpp}
 Signature changes and massive simplifications to routines that report
 BibTeX data, since we now have an articulate representation.

-src/insets/InsetBibtex.{h,cpp}
 Re-write the parser code so we store a key->value map of the BibTeX data
 rather than just one long string. This is the main work.

-src/frontends/controllers/ControlCitation.{h,cpp}
-src/insets/InsetBibitem.{h,cpp}
-src/insets/InsetCitation.cpp
 Adaptations and simplifications.

-src/insets/Inset.h
-src/Buffer.{h,cpp}
-src/insets/InsetInclude.{h,cpp}
 Signature changes.

-src/Makefile.am
-development/scons/scons_manifest.py
 Add src/Biblio_typedefs.h


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19598 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-16 01:59:20 +00:00
Jean-Marc Lasgouttes
58e6dba95f properly properly traces of alternative frontends
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19580 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-14 23:24:38 +00:00
Richard Heck
8a221dc70c Move the lyx::biblio namespace into src/. Also make changes to how the BibTeX
information is acquired. This involves (i) moving the bulk of fillWithBibKeys() 
into Biblio.cpp, (ii) introducing a virtual method Inset::fillWithBibKeys() that,
by default, does nothing, and (iii) over-riding this method in the insets that do
need to do something.

This is all preparatory for a more substantial re-working of the BibTex code,
which should follow shortly.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19565 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-14 16:50:51 +00:00
Enrico Forestieri
60c73c05a3 Add version information to the lyx executable on Windows.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19537 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-14 01:34:26 +00:00
André Pönitz
5dc658e982 add some comment
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19518 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-13 19:13:39 +00:00
André Pönitz
052d7ab681 make the static version link again
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19517 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-13 19:08:35 +00:00
André Pönitz
77cfe019f2 remove special handling of version.cpp[.in]
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19497 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-13 12:04:57 +00:00
Christian Ridderström
5d356249a0 fix warning on possibly(?) unused precompiled headers due to different -fPic settings on pch creation and use
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19469 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-12 18:46:23 +00:00
Christian Ridderström
559c2f6482 fix warning on possibly(?) unused precompiled headers due to different -fPic settings on pch creation and use
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19468 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-12 18:42:57 +00:00
André Pönitz
31d782b820 shuffle (la)texstream around a bit
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19460 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-12 14:54:54 +00:00
Martin Vermeer
273631ea6d only include precompiled headers once
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19456 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-12 13:38:45 +00:00
André Pönitz
da1c04ea9a fix linking error in the frontend
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19430 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-11 18:24:00 +00:00
André Pönitz
168f6a5a50 fix position of inferior libraries
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19425 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-11 11:09:09 +00:00
André Pönitz
5d80a87ceb merge {mathed,insets,graphics}/Makefile.am into src/Makefile.am
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19424 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-11 10:32:36 +00:00
André Pönitz
b99bbdb7f1 move tex2lyx and client subdir handling to the main Makefile.am, so they won't be considered when building in src only. Faster roundtrips...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19421 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-11 08:48:57 +00:00
André Pönitz
67e61a3956 enable building of shared libraries. reduces final linktime. also combine boost stuff into a single library
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19410 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-10 22:33:54 +00:00
Jean-Marc Lasgouttes
a7039727c3 * configure.ac: check earlier for -liconv and -lz, since Qt4 needs them;
put LIBICONV in LIBS.

	* src/Makefile.am: 
	* src/client/Makefile.am: update accordingly.

	* config/qt4.m4: do not try to run pkg-config tests when pkg-config 
	is not installed.

	* INSTALL.MacOSX: advise to use pkg-config; remove -lz from LDFLAGS;
	remove --with-frontend=qt4 from configure line; in the svn case, remove
	also --disable-stdlib-debug and --disable-concept-checks (and explain 
	why --disable-stdlib-debug may be needed).



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19056 a592a061-630c-0410-9148-cb99ea01b6c8
2007-07-12 12:57:59 +00:00
José Matox
111516498d André was nice to scons and forgot autotools :-)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18339 a592a061-630c-0410-9148-cb99ea01b6c8
2007-05-15 11:27:04 +00:00
Enrico Forestieri
1f3bec86bd Last(?) missing rename: version.C -> version.cpp
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18194 a592a061-630c-0410-9148-cb99ea01b6c8
2007-05-04 00:47:24 +00:00
André Pönitz
75637c0dd8 remove RowList_fwd.h. Not really needed
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18135 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-30 22:02:15 +00:00
André Pönitz
a939474037 consolidate tex-accent.* Trans.* KmodInfo.h into Trans.{h,cpp}. All stuff was used at most once and basically implementation details
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18131 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-30 21:44:00 +00:00
André Pönitz
40e4ab9bf3 distribute content sof tex-strings.cpp to their respective unique places of usage
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18130 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-30 21:01:24 +00:00