lyx_mirror/src/frontends/qt4
Abdelrazak Younes 2a3f27a80c Code simplification.
TocTypeModel is not needed outside TocModel.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33707 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-10 21:00:34 +00:00
..
ui Document Settings: fix Float placement dialog. The float type is not 2010-03-01 09:03:15 +00:00
Action.cpp Transfer LyXfunc code to GuiApplication::dispatch() and getStatus(). Now 2010-02-09 16:11:13 +00:00
Action.h
BulletsModule.cpp
BulletsModule.h
ButtonController.cpp
ButtonController.h Fix doxygen output for grouped items. Without the /name tag doxygen shows the group name as the name of the first item. Moreover, the comment styles are somewhat standardized. 2010-01-27 18:10:33 +00:00
ButtonPolicy.cpp
ButtonPolicy.h
ColorCache.cpp
ColorCache.h
CustomizedWidgets.cpp
CustomizedWidgets.h
Dialog.cpp Attempt to simplify as much as possible Inset parameter dialog creation. We now just need an ui file and a class that inherits InsetParamsWidget and implement 4 methods. Then InsetParamsDialog will take care of the rest. InsetParamsDialog has 2 running mode: "immediate apply" and "Restore/OK/Close" which is the default; I hope this is enough to satisfy all users. The checkbox status might be saved later in session settings. 2010-02-15 23:17:45 +00:00
Dialog.h Attempt to simplify as much as possible Inset parameter dialog creation. We now just need an ui file and a class that inherits InsetParamsWidget and implement 4 methods. Then InsetParamsDialog will take care of the rest. InsetParamsDialog has 2 running mode: "immediate apply" and "Restore/OK/Close" which is the default; I hope this is enough to satisfy all users. The checkbox status might be saved later in session settings. 2010-02-15 23:17:45 +00:00
DialogView.h Fix doxygen output for grouped items. Without the /name tag doxygen shows the group name as the name of the first item. Moreover, the comment styles are somewhat standardized. 2010-01-27 18:10:33 +00:00
DockView.h
EmptyTable.cpp
EmptyTable.h
FileDialog.cpp replace links to bugzilla with links to trac 2009-12-11 00:59:10 +00:00
FileDialog.h
FindAndReplace.cpp * FindAndReplace.cpp: 2010-01-29 08:59:09 +00:00
FindAndReplace.h Transfer LyXfunc code to GuiApplication::dispatch() and getStatus(). Now 2010-02-09 16:11:13 +00:00
FloatPlacement.cpp Some cleanup for the Floating class. 2010-03-04 13:42:05 +00:00
FloatPlacement.h InsetParamsWidget(): fix method constness. 2010-02-18 07:56:38 +00:00
GuiAbout.cpp About box: Migrate to DialogView. 2010-01-23 20:29:00 +00:00
GuiAbout.h About box: Migrate to DialogView. 2010-01-23 20:29:00 +00:00
GuiAlert.cpp Fix unsafe use of fixed width arrays. 2010-03-06 14:57:16 +00:00
GuiApplication.cpp s/updateLabels/updateBuffer/g, per a suggestion of Abdel's. 2010-03-03 22:13:45 +00:00
GuiApplication.h Application: get rid of 2 virtual interface. 2010-02-09 17:25:44 +00:00
GuiBibitem.cpp Migrate GuiBibitem to InsetParamsWidget. 2010-02-23 21:24:24 +00:00
GuiBibitem.h Migrate GuiBibitem to InsetParamsWidget. 2010-02-23 21:24:24 +00:00
GuiBibtex.cpp
GuiBibtex.h
GuiBox.cpp Attempt to simplify as much as possible Inset parameter dialog creation. We now just need an ui file and a class that inherits InsetParamsWidget and implement 4 methods. Then InsetParamsDialog will take care of the rest. InsetParamsDialog has 2 running mode: "immediate apply" and "Restore/OK/Close" which is the default; I hope this is enough to satisfy all users. The checkbox status might be saved later in session settings. 2010-02-15 23:17:45 +00:00
GuiBox.h InsetParamsWidget(): fix method constness. 2010-02-18 07:56:38 +00:00
GuiBranch.cpp Migrate Branch dialog to InsetParamsWidget 2010-02-19 20:57:25 +00:00
GuiBranch.h Migrate Branch dialog to InsetParamsWidget 2010-02-19 20:57:25 +00:00
GuiBranches.cpp
GuiBranches.h
GuiChanges.cpp
GuiChanges.h
GuiCharacter.cpp
GuiCharacter.h Fix doxygen output for grouped items. Without the /name tag doxygen shows the group name as the name of the first item. Moreover, the comment styles are somewhat standardized. 2010-01-27 18:10:33 +00:00
GuiCitation.cpp GuiCitation.cpp: 2010-01-24 19:16:44 +00:00
GuiCitation.h
GuiClipboard.cpp
GuiClipboard.h
GuiCommandBuffer.cpp Transfer LyXfunc code to GuiApplication::dispatch() and getStatus(). Now 2010-02-09 16:11:13 +00:00
GuiCommandBuffer.h
GuiCommandEdit.cpp
GuiCommandEdit.h
GuiCompare.cpp Set the hourglass cursor for the dialog while running. However, the Cancel button can always be pressed, so this one gets a normal cursor. 2010-01-14 01:20:14 +00:00
GuiCompare.h Set the hourglass cursor for the dialog while running. However, the Cancel button can always be pressed, so this one gets a normal cursor. 2010-01-14 01:20:14 +00:00
GuiCompleter.cpp Fix bug #6552: Crash when inserting TeX-code in math mode and scrolling 2010-02-26 15:59:08 +00:00
GuiCompleter.h
GuiDelimiter.cpp
GuiDelimiter.h
GuiDialog.cpp
GuiDialog.h
GuiDocument.cpp * Spellchecker dialog: 2010-02-10 08:10:31 +00:00
GuiDocument.h Attempt to simplify as much as possible Inset parameter dialog creation. We now just need an ui file and a class that inherits InsetParamsWidget and implement 4 methods. Then InsetParamsDialog will take care of the rest. InsetParamsDialog has 2 running mode: "immediate apply" and "Restore/OK/Close" which is the default; I hope this is enough to satisfy all users. The checkbox status might be saved later in session settings. 2010-02-15 23:17:45 +00:00
GuiErrorList.cpp Fix bug #2179: GuiErrorList resets to first item. 2009-11-28 00:52:08 +00:00
GuiErrorList.h Fix bug #2179: GuiErrorList resets to first item. 2009-11-28 00:52:08 +00:00
GuiERT.cpp Attempt to simplify as much as possible Inset parameter dialog creation. We now just need an ui file and a class that inherits InsetParamsWidget and implement 4 methods. Then InsetParamsDialog will take care of the rest. InsetParamsDialog has 2 running mode: "immediate apply" and "Restore/OK/Close" which is the default; I hope this is enough to satisfy all users. The checkbox status might be saved later in session settings. 2010-02-15 23:17:45 +00:00
GuiERT.h InsetParamsWidget(): fix method constness. 2010-02-18 07:56:38 +00:00
GuiExternal.cpp * InsetExternal.cpp: 2009-10-09 12:40:34 +00:00
GuiExternal.h
GuiFontExample.cpp
GuiFontExample.h
GuiFontLoader.cpp replace links to bugzilla with links to trac 2009-12-11 00:59:10 +00:00
GuiFontLoader.h
GuiFontMetrics.cpp
GuiFontMetrics.h
GuiGraphics.cpp This is still needed for keyboard focus 2009-11-06 15:56:15 +00:00
GuiGraphics.h
GuiGraphicsUi.h
GuiHSpace.cpp Migrate GuiHSPace to InsetParamsDialog. 2010-02-21 09:28:33 +00:00
GuiHSpace.h Migrate GuiHSPace to InsetParamsDialog. 2010-02-21 09:28:33 +00:00
GuiHyperlink.cpp CMake: fix merged build, seems GCC could not handle the namespaces correctly 2010-01-30 11:34:28 +00:00
GuiHyperlink.h
GuiIdListModel.cpp
GuiIdListModel.h
GuiImage.cpp
GuiImage.h
GuiInclude.cpp
GuiInclude.h
GuiIndex.cpp
GuiIndex.h
GuiIndices.cpp
GuiIndices.h
GuiInfo.cpp Attempt to simplify as much as possible Inset parameter dialog creation. We now just need an ui file and a class that inherits InsetParamsWidget and implement 4 methods. Then InsetParamsDialog will take care of the rest. InsetParamsDialog has 2 running mode: "immediate apply" and "Restore/OK/Close" which is the default; I hope this is enough to satisfy all users. The checkbox status might be saved later in session settings. 2010-02-15 23:17:45 +00:00
GuiInfo.h InsetParamsWidget(): fix method constness. 2010-02-18 07:56:38 +00:00
GuiKeySymbol.cpp
GuiKeySymbol.h
GuiLabel.cpp Update the GuiLabel view when the document is read-only. Also disable the text field. 2009-12-31 16:47:36 +00:00
GuiLabel.h Update the GuiLabel view when the document is read-only. Also disable the text field. 2009-12-31 16:47:36 +00:00
GuiListings.cpp CMake: fix merged build, seems GCC could not handle the namespaces correctly 2010-01-30 11:34:28 +00:00
GuiListings.h
GuiLog.cpp * Include bibtex and makeindex logs to log file dialog. 2009-11-29 17:15:22 +00:00
GuiLog.h * Include bibtex and makeindex logs to log file dialog. 2009-11-29 17:15:22 +00:00
GuiMathMatrix.cpp Fix unsafe use of fixed width arrays. 2010-03-06 14:57:16 +00:00
GuiMathMatrix.h
GuiNomencl.cpp Fix also nomenclature dialog which was refered in #3852 2009-11-06 15:22:21 +00:00
GuiNomencl.h
GuiNote.cpp
GuiNote.h
GuiPainter.cpp
GuiPainter.h
GuiParagraph.cpp
GuiParagraph.h
GuiPhantom.cpp
GuiPhantom.h
GuiPrefs.cpp Spellcheck related bugfix from John McCabe-Dansted: 2010-03-08 13:22:56 +00:00
GuiPrefs.h improve fontenc GUI. 2009-11-29 13:29:36 +00:00
GuiPrint.cpp
GuiPrint.h
GuiPrintindex.cpp
GuiPrintindex.h
GuiPrintNomencl.cpp
GuiPrintNomencl.h
GuiProgress.cpp no Q_EMIT in older Qt versions 2010-03-08 09:35:10 +00:00
GuiProgress.h Use one place to generate current time string, increase resolution to ms 2010-03-07 11:55:14 +00:00
GuiProgressView.cpp Use one place to generate current time string, increase resolution to ms 2010-03-07 11:55:14 +00:00
GuiProgressView.h Remove the no more necessary workaround for Qt < 4.4 2010-01-13 13:19:24 +00:00
GuiRef.cpp Use better include for 'struct QHeaderView' 2010-02-01 09:54:41 +00:00
GuiRef.h * GuiRef: improve filter UI 2010-01-30 11:19:48 +00:00
GuiSearch.cpp
GuiSearch.h
GuiSelection.cpp
GuiSelection.h
GuiSelectionManager.cpp cmake: fix merge build 2009-11-07 12:50:30 +00:00
GuiSelectionManager.h
GuiSendto.cpp
GuiSendto.h
GuiSetBorder.cpp * GuiSetBorder.cpp: lighter colour for disabled borders (not used currently). 2010-01-31 13:15:26 +00:00
GuiSetBorder.h
GuiShowFile.cpp
GuiShowFile.h
GuiSpellchecker.cpp * GuiSpellchecker.cpp: 2010-02-26 13:34:36 +00:00
GuiSpellchecker.h Add language selector to the spell chekcer dialog (bug 2208). 2010-02-09 13:01:37 +00:00
GuiSymbols.cpp
GuiSymbols.h
GuiTabular.cpp Try to restore longtable dialog to a semi functional state. This Dialog is really horrible, disabling/enabling a checkbox depending on the cursor position is very unintuitive... We need some edit boxes to show which rows are header/footer/etc without having to move the cursor first. That would be my next step newt week. 2010-03-06 19:08:10 +00:00
GuiTabular.h InsetParamsDialog: don't update the inset widget if we are not un 2010-02-19 11:04:15 +00:00
GuiTabularCreate.cpp
GuiTabularCreate.h
GuiTexinfo.cpp
GuiTexinfo.h
GuiThesaurus.cpp * Spellchecker dialog: 2010-02-10 08:10:31 +00:00
GuiThesaurus.h
GuiToc.cpp
GuiToc.h
GuiToolbar.cpp Transfer LyXfunc code to GuiApplication::dispatch() and getStatus(). Now 2010-02-09 16:11:13 +00:00
GuiToolbar.h
GuiView.cpp Fix bug #6488: Avoid a null pointer when accessing documentBufferView when there is none. 2010-03-10 14:46:28 +00:00
GuiView.h fix bug 6578, use tabs 2010-03-05 18:07:05 +00:00
GuiViewSource.cpp
GuiViewSource.h
GuiVSpace.cpp Attempt to simplify as much as possible Inset parameter dialog creation. We now just need an ui file and a class that inherits InsetParamsWidget and implement 4 methods. Then InsetParamsDialog will take care of the rest. InsetParamsDialog has 2 running mode: "immediate apply" and "Restore/OK/Close" which is the default; I hope this is enough to satisfy all users. The checkbox status might be saved later in session settings. 2010-02-15 23:17:45 +00:00
GuiVSpace.h InsetParamsWidget(): fix method constness. 2010-02-18 07:56:38 +00:00
GuiWorkArea.cpp Kill locker() API in VCS 2010-02-12 07:21:11 +00:00
GuiWorkArea.h Today is a sad day, LyXView has passed over... long live GuiView! 2010-02-09 17:06:40 +00:00
GuiWrap.cpp
GuiWrap.h
IconPalette.cpp
IconPalette.h
InsertTableWidget.cpp Transfer LyXfunc code to GuiApplication::dispatch() and getStatus(). Now 2010-02-09 16:11:13 +00:00
InsertTableWidget.h
InsetParamsDialog.cpp Migrate GuiBibitem to InsetParamsWidget. 2010-02-23 21:24:24 +00:00
InsetParamsDialog.h Implement Vincent's suggestions: 2010-02-19 20:44:59 +00:00
InsetParamsWidget.cpp Attempt to simplify as much as possible Inset parameter dialog creation. We now just need an ui file and a class that inherits InsetParamsWidget and implement 4 methods. Then InsetParamsDialog will take care of the rest. InsetParamsDialog has 2 running mode: "immediate apply" and "Restore/OK/Close" which is the default; I hope this is enough to satisfy all users. The checkbox status might be saved later in session settings. 2010-02-15 23:17:45 +00:00
InsetParamsWidget.h Migrate GuiHSPace to InsetParamsDialog. 2010-02-21 09:28:33 +00:00
LaTeXHighlighter.cpp
LaTeXHighlighter.h
LayoutBox.cpp Transfer LyXfunc code to GuiApplication::dispatch() and getStatus(). Now 2010-02-09 16:11:13 +00:00
LayoutBox.h
LengthCombo.cpp According to André, QLatin1String is cheaper. 2010-02-01 01:07:32 +00:00
LengthCombo.h
LyXFileDialog.cpp
LyXFileDialog.h
Makefile.am Start preparations for alpha 2010-03-05 08:05:20 +00:00
Menus.cpp Some cleanup for the Floating class. 2010-03-04 13:42:05 +00:00
Menus.h
PanelStack.cpp * PanelStack.{cpp,h}: 2010-01-10 14:46:39 +00:00
PanelStack.h * PanelStack.{cpp,h}: 2010-01-10 14:46:39 +00:00
pch.h
qt_helpers.cpp
qt_helpers.h
qt_i18n.h
README
TocModel.cpp Code simplification. 2010-03-10 21:00:34 +00:00
TocModel.h Code simplification. 2010-03-10 21:00:34 +00:00
TocWidget.cpp This is worth having here anyway. 2010-03-10 18:43:10 +00:00
TocWidget.h This can just take a FuncCode. 2010-02-26 19:51:06 +00:00
Toolbars.cpp Introduce "samerow" toolbar tag and let View/Update toolbar to be in the 2010-01-27 17:19:14 +00:00
Toolbars.h Introduce "samerow" toolbar tag and let View/Update toolbar to be in the 2010-01-27 17:19:14 +00:00
Validator.cpp
Validator.h

This file contains some do's and dont's for the Qt4 frontend.

General rules
-------------

Every editable field that affects the state of the dialog contents
from LyX's point of view should connect its xxxChanged() signal to
a the dialog's changed_adaptor() slot, which in turn should call
changed(). If you are using a more complicated thing anyway,
then remember to call changed() at the end (if it has changed!)

Every non-trivial widget should have a tooltip. If you don't know
what to write, write "FIXME", and it can fixed later. Don't be afraid
to use QWhatsThis too, but this must be done in the derived class's
constructor, and use _("..."). Non-trivial means that things like "OK"
/must not/ have a tooltip.

moc needs a fully qualified "std::string" for .connect() statements
to work. Be very, very careful.

Remember to check tab order on a dialog (third icon, with blue bars in
designer).

Remember to check sensible resizing behaviour on a dialog. This is
usually done by adding a top-level layout to the dialog in Designer.

Remember to use Edit->Check Accelerators

If necessary, you should override Qt2Base::isValid() for determining the
validity of the current dialog's contents.

OK/Apply/Restore/Close should be connected in the derived class's
constructor to call slotOK() etc. Refer to close/cancel as close in the
source.

Override update_contents() to update the dialog, not update().  Only
these functions may change dialog widgets that may emit changed() during
initialisation, to prevent the button controller from changing its
state.

Never call buttoncontroller functions directly from dialogs. In general,
you should use Qt2Base::changed() in all circumstances. However, if you
must call the buttoncontroller, make sure to respect Qt2Base::updating_

Naming conventions
------------------

QFoo.{cpp,h}     The file that interacts with the controller _and_
the implementation of the dialog, derived from the generated files
ui/FooDialog.ui  The designer file
ui_FooDialog.h   Generated files from FooDialog.ui

slots should be named e.g. slotFooClicked(), slotFooSelected(), where
foo is the name of the widget.

Widgets should be named like "fooXX", where XX is one of the following
widget types :

CB - check box
CO - combo box
ED - line edit
GB - group box
LA - label
LC - LengthCombo
LV - QListView
ML - QTextBrowser
PB - push button
RB - radio button
SB - spin box
SL - slider
TE - text edit
TW - tree widget (FIXME: also TV in some files)


Qt, Unicode, and LyX
--------------------

LyX uses a different encoding (UCS4) than Qt (UTF16), therefore there are a
number of conversion functions in qt_helpers.{cpp,h}. Read the doxygen
documentation for details when to use which function.

Additionally, you should follow these simple rules :

o Use qt_() not _() in code
o Use the conversion functions of qt_helpers.h, NOT .latin1() / .c_str() etc.