X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Ffrontends%2Fqt4%2FGuiDocument.h;h=920e95145d102319956b8c1ddc407bae1b3b3c5e;hb=425d092204118ea6c24c28e85fdf03fcf2bb51a4;hp=fc136f2f2cd7c14dc763317ae3a7651c2f1a65ff;hpb=d5d665482e118d5c993717c0ec0406b94c57aa1f;p=lyx.git diff --git a/src/frontends/qt4/GuiDocument.h b/src/frontends/qt4/GuiDocument.h index fc136f2f2c..920e95145d 100644 --- a/src/frontends/qt4/GuiDocument.h +++ b/src/frontends/qt4/GuiDocument.h @@ -19,14 +19,11 @@ #include "BulletsModule.h" #include "GuiDialog.h" #include "GuiIdListModel.h" -#include "GuiSelectionManager.h" - -#include "support/types.h" #include "ui_DocumentUi.h" -#include "ui_EmbeddedFilesUi.h" #include "ui_FontUi.h" #include "ui_TextLayoutUi.h" +#include "ui_MasterChildUi.h" #include "ui_MathsUi.h" #include "ui_LaTeXUi.h" #include "ui_PageLayoutUi.h" @@ -36,20 +33,25 @@ #include "ui_MarginsUi.h" #include "ui_PreambleUi.h" #include "ui_PDFSupportUi.h" +#include "ui_ModulesUi.h" +#include "ui_OutputUi.h" +#include "ui_ListingsSettingsUi.h" +#include #include -#include - -class FloatPlacement; namespace lyx { class BufferParams; +class FloatPlacement; +class LayoutModuleList; class TextClass; namespace frontend { class GuiBranches; +class GuiIndices; +class ModuleSelectionManager; class PreambleModule; /// @@ -63,84 +65,60 @@ public: }; -class ModuleSelMan : public GuiSelectionManager -{ -public: - ModuleSelMan( - QListView * availableLV, - QListView * selectedLV, - QPushButton * addPB, - QPushButton * delPB, - QPushButton * upPB, - QPushButton * downPB, - GuiIdListModel * availableModel, - GuiIdListModel * selectedModel); -private: - /// - virtual void updateAddPB(); - /// - virtual void updateUpPB(); - /// - virtual void updateDownPB(); - /// - virtual void updateDelPB(); - /// returns availableModel as a GuiIdListModel - GuiIdListModel * getAvailableModel() - { - return dynamic_cast(availableModel); - }; - /// returns selectedModel as a GuiIdListModel - GuiIdListModel * getSelectedModel() - { - return dynamic_cast(selectedModel); - }; -}; - - class GuiDocument : public GuiDialog, public Ui::DocumentUi { Q_OBJECT public: GuiDocument(GuiView & lv); - void updateParams(BufferParams const & params); - void apply(BufferParams & params); - + void paramsToDialog(); void updateFontsize(std::string const &, std::string const &); + void updateFontlist(); + void updateDefaultFormat(); void updatePagestyle(std::string const &, std::string const &); + bool isChildIncluded(std::string const &); void showPreamble(); - /// validate listings parameters and return an error message, if any - docstring validate_listings_params(); + /// + BufferParams const & params() const { return bp_; } -public Q_SLOTS: +private Q_SLOTS: void updateNumbering(); void change_adaptor(); - void set_listings_msg(); + void includeonlyClicked(QTreeWidgetItem * item, int); + void setListingsMessage(); void saveDefaultClicked(); void useDefaultsClicked(); - -private Q_SLOTS: - void updateParams(); void setLSpacing(int); void setMargins(bool); - void setCustomPapersize(int); + void papersizeChanged(int); + void setColSep(); void setCustomMargins(bool); + void fontencChanged(int); void romanChanged(int); void sansChanged(int); void ttChanged(int); + void setIndent(int); + void enableIndent(bool); void setSkip(int); void enableSkip(bool); void portraitChanged(); + void browseLayout(); + void browseMaster(); void classChanged(); + void bibtexChanged(int); void updateModuleInfo(); - void updateEmbeddedFileList(); - + void modulesChanged(); + void changeBackgroundColor(); + void deleteBackgroundColor(); + void xetexChanged(bool); + void branchesRename(docstring const &, docstring const &); private: - void closeEvent(QCloseEvent * e); + /// validate listings parameters and return an error message, if any + QString validateListingsParameters(); -private: UiWidget *textLayoutModule; + UiWidget *masterChildModule; UiWidget *fontModule; UiWidget *pageLayoutModule; UiWidget *marginsModule; @@ -150,24 +128,24 @@ private: UiWidget *mathsModule; UiWidget *latexModule; UiWidget *pdfSupportModule; - UiWidget *embeddedFilesModule; - PreambleModule *preambleModule; + UiWidget *modulesModule; + UiWidget *outputModule; + UiWidget *listingsModule; + PreambleModule * preambleModule; - GuiBranches *branchesModule; + GuiBranches * branchesModule; + GuiIndices * indicesModule; BulletsModule * bulletsModule; FloatPlacement * floatModule; - GuiSelectionManager * selectionManager; - - // FIXME - std::vector lang_; + ModuleSelectionManager * selectionManager; /// Available modules - GuiIdListModel * availableModel() { return &available_model_; } + GuiIdListModel * availableModel() { return &modules_av_model_; } /// Selected modules - GuiIdListModel * selectedModel() { return &selected_model_; } -private: + GuiIdListModel * selectedModel() { return &modules_sel_model_; } + /// Apply changes void applyView(); /// update @@ -176,16 +154,23 @@ private: void updateAvailableModules(); /// void updateSelectedModules(); + /// + void updateIncludeonlys(); /// save as default template void saveDocDefault(); /// reset to default params void useClassDefaults(); + /// + void setLayoutComboByIDString(std::string const & idString); + /// available classes + GuiIdListModel classes_model_; /// available modules - GuiIdListModel available_model_; + GuiIdListModel modules_av_model_; /// selected modules - GuiIdListModel selected_model_; + GuiIdListModel modules_sel_model_; + /// current buffer + BufferId current_id_; -protected: /// return false if validate_listings_params returns error bool isValid(); @@ -200,26 +185,32 @@ protected: /// void dispatchParams(); /// + void modulesToParams(BufferParams &); + /// bool isBufferDependent() const { return true; } /// always true since we don't manipulate document contents bool canApply() const { return true; } /// - TextClass const & textClass() const; + DocumentClass const & documentClass() const; /// BufferParams & params() { return bp_; } /// - BufferParams const & params() const { return bp_; } - /// BufferId id() const; /// struct modInfoStruct { - std::string name; + QString name; std::string id; + QString description; }; /// List of available modules - std::vector const & getModuleInfo(); + std::list const & getModuleInfo(); /// Modules in use in current buffer - std::vector const getSelectedModules(); + std::list const getSelectedModules(); + /// + std::list const getProvidedModules(); + /// + std::list const + makeModuleInfo(LayoutModuleList const & mods); /// void setLanguage() const; /// @@ -232,19 +223,26 @@ protected: bool providesSC(std::string const & font) const; /// does this font provide size adjustment? bool providesScale(std::string const & font) const; + /// + void executeBranchRenaming() const; + /// + void setCustomPapersize(bool custom); private: /// void loadModuleInfo(); /// + void updateUnknownBranches(); + /// BufferParams bp_; /// List of names of available modules - std::vector moduleNames_; + std::list moduleNames_; + /// + std::map changedBranches_; + /// + std::list includeonlys_; }; -typedef void const * BufferId; - - class PreambleModule : public UiWidget { Q_OBJECT