lyx_mirror/src/frontends/qt4
Jürgen Spitzmüller 1f97351716 * Menus.cpp:
- add accelerators to the language selector submenu (bug 6558)

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33555 a592a061-630c-0410-9148-cb99ea01b6c8
2010-02-24 14:06:40 +00:00
..
ui Migrate GuiBibitem to InsetParamsWidget. 2010-02-23 21:24:24 +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 Bullet's pref box glitch - looks like qt 4.5 changed some small finger paint and we need 2009-08-17 14:22:40 +00:00
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 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
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 Don't use a hourglass cursor while diplaying alerts. 2010-01-11 01:27:15 +00:00
GuiApplication.cpp * InsetTabular cleanup: 2010-02-18 08:28:46 +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 Get rid off unneeded horiz scrollbar 2009-08-12 09:46:26 +00:00
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 Transfer LyXfunc code to GuiApplication::dispatch() and getStatus(). Now 2010-02-09 16:11:13 +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 Adjust the work-around for bug #5957. 2009-08-14 14:58:52 +00:00
GuiImage.h
GuiInclude.cpp
GuiInclude.h
GuiIndex.cpp
GuiIndex.h
GuiIndices.cpp * GuiIndices.cpp: 2009-08-27 16:47:45 +00:00
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
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 * add pref option to exclude notes and comments from spell checking (bug 1509). 2010-02-13 16:22:39 +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 Move lyxerrFlush() out of singnal/slot business. 2010-01-13 19:07:18 +00:00
GuiProgress.h Move lyxerrFlush() out of singnal/slot business. 2010-01-13 19:07:18 +00:00
GuiProgressView.cpp GuiProgressView.cpp: 2010-02-06 14:38:02 +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 Move to QAbstractItemView 2009-08-14 20:37:12 +00:00
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 Fix bug #6217: Replacing a word in spellcheck does not update toolbar 2010-02-12 11:25:44 +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 Fix cell width initial fill-in. 2010-02-19 10:25:20 +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 Move layout from GuiToolbar to GuiView. Now, it is possible to use the popup also when the Toolbar has not been visible before. 2009-08-14 22:58:57 +00:00
GuiView.cpp Migrate GuiBibitem to InsetParamsWidget. 2010-02-23 21:24:24 +00:00
GuiView.h Today is a sad day, LyXView has passed over... long live GuiView! 2010-02-09 17:06:40 +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 Remove GuiToolbar * member from the LayoutBox ctor: Why should we limit a LayoutBox to the Toolbar and it doesn't even have to know where it is. 2009-08-14 22:47:57 +00:00
LengthCombo.cpp According to André, QLatin1String is cheaper. 2010-02-01 01:07:32 +00:00
LengthCombo.h
LyXFileDialog.cpp
LyXFileDialog.h
Makefile.am Fix autotools for r33480. 2010-02-16 08:05:49 +00:00
Menus.cpp * Menus.cpp: 2010-02-24 14:06:40 +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 Fix a bunch of assertions. 2009-08-15 20:47:46 +00:00
qt_helpers.h
qt_i18n.h
README
TocModel.cpp Transfer LyXfunc code to GuiApplication::dispatch() and getStatus(). Now 2010-02-09 16:11:13 +00:00
TocModel.h replace links to bugzilla with links to trac 2009-12-11 00:59:10 +00:00
TocWidget.cpp * TocWidget.{cpp,h}: 2010-02-13 08:30:16 +00:00
TocWidget.h * TocWidget.{cpp,h}: 2010-02-13 08:30:16 +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.{cpp, h}: 2009-07-19 16:53:50 +00:00
Validator.h * Validator.{cpp, h}: 2009-07-19 16:53:50 +00:00

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.