/* This file is part of the KDE project Copyright (C) 1998, 1999 Reginald Stadlbauer Copyright (C) 2005-2006 Thorsten Zachmann This library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details. You should have received a copy of the GNU Library General Public License along with this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301, USA. */ #ifndef kpresenter_view_h #define kpresenter_view_h #ifdef HAVE_CONFIG_H #include #endif #include #include #include #include #include "global.h" #include #include #include class TQPopupMenu; class TQSplitter; class TQLabel; class DCOPObject; class KPrView; class KPrBackDialog; class KoRuler; class TQScrollBar; class AFChoose; class KPrPropertyEditor; class KPrPgConfDia; class KPrSlideTransitionDia; class KPrRotationDialogImpl; class KPrShadowDialogImpl; class KPrImageEffectDia; class ConfPieDia; class ConfRectDia; class ConfPolygonDia; class ConfPictureDia; class KPrPresDurationDia; class TQToolButton; class KPrSideBar; class KPrNoteBar; class KAction; class KActionMenu; class KToggleAction; class TKSelectColorAction; class KoPartSelectAction; class KoPicture; class KoParagStyle; class KoLineStyleAction; class KoLineWidthAction; class KoRect; class KoCharSelectDia; class KoTextFormat; class KoTextObject; class KoTextZoomHandler; class KCommand; class KMacroCommand; class KFontSizeAction; class KColorAction; class KSelectAction; class KFontAction; class KoParagCounter; class KActionMenu; class KoSearchContext; class KPrFindReplace; class KPrCanvas; class KoFontDia; class KoParagDia; class KPrObject; class KPrPixmapObject; class KPrDocument; class KPrPage; class KPrTextObject; class KoTextIterator; class KStatusBarLabel; class KoSpell; #include namespace KSpell2 { class Dialog; } class PageBase : public TQWidget { public: PageBase( TQWidget *parent, KPrView *v ) : TQWidget( parent ), view( v ) {} void resizeEvent( TQResizeEvent *e ); private: KPrView *view; }; class KPrView : public KoView { friend class PageBase; Q_OBJECT public: KPrView( KPrDocument* _doc, TQWidget *_parent = 0, const char *_name = 0 ); ~KPrView(); void initGui(); virtual DCOPObject* dcopObject(); // for dcop interface int getCurrentPresPage() const; int getCurrentPresStep() const; int getPresStepsOfPage() const; int getNumPresPages() const; bool gotoPresPage( int pg ); virtual void setupPrinter( KPrinter &printer ); virtual void print( KPrinter &printer ); void showFormat( const KoTextFormat &format ); void showZoom( int zoom ); // show a zoom value in the combo void setZoom( int zoom, bool updateViews ); // change the zoom value void changeZoomMenu( int zoom=-1); void showStyle( const TQString & styleName ); void updateStyleList(); KoTextZoomHandler *zoomHandler() const; //used this function when we when to print/create web presentation etc... //=>we unzoom it. void unZoomDocument(int &dpiX,int &dpiY); void zoomDocument(int zoom); //refresh footer/header button when we make undo/redo show/hide header/footer void updateHeaderFooterButton(); void updateDisplayObjectMasterPageButton(); void updateDisplayBackgroundButton(); virtual int leftBorder() const { return canvas()->mapTo(const_cast(this), TQPoint(0,0)).x(); }; virtual int rightBorder() const { return width() - canvas()->mapTo(const_cast(this), TQPoint(canvas()->width(), 0)).x(); }; virtual int topBorder() const { return canvas()->mapTo(const_cast(this), TQPoint(0,0)).y(); }; virtual int bottomBorder() const { return height() - canvas()->mapTo(const_cast(this), TQPoint(0, canvas()->height())).y(); }; void updateGuideLineButton(); void updateGridButton(); void savePicture( const TQString& oldName, KoPicture& picture); void savePicture( KPrPixmapObject* obj ); void insertFile(const TQString &path); void testAndCloseAllTextObjectProtectedContent(); void updateRulerInProtectContentMode(); TQPtrList listOfResultOfCheckWord( const TQString &word ); /** * Returns the KPresenter global KSpell2 Broker object. */ KSpell2::Broker *broker() const; bool editMaster() const { return m_editMaster;} signals: void currentPageChanged( int ); void presentationFinished(); public slots: // edit menu void editCut(); void editCopy(); void editPaste(); void editDelete(); void editSelectAll(); void editDeSelectAll(); void editCopyPage(); void editDuplicatePage(); void editDelPage(); void editFind(); void editReplace(); // view menu void viewShowSideBar(); void viewShowNoteBar(); void viewSlideMaster(); void viewZoom( const TQString &s ); void viewFooter(); void viewHeader(); void insertComment(); void editComment(); void viewGuideLines(); void viewGrid(); void viewSnapToGrid(); // insert menu void insertPage(); void insertPicture(); void insertPicture(const TQString &file); void insertSpecialChar(); // tools menu void toolsMouse(); void toolsRotate(); void toolsZoom(); void toolsLine(); void toolsLinePopup(); void toolsShapePopup(); void toolsRectangle(); void toolsCircleOrEllipse(); void toolsPie(); void toolsText(); void toolsAutoform(); void toolsDiagramm(); void toolsTable(); void toolsFormula(); void toolsObject(); void toolsFreehand(); void toolsPolyline(); void toolsQuadricBezierCurve(); void toolsCubicBezierCurve(); void toolsConvexOrConcavePolygon(); void toolsClosedLinePopup(); void toolsClosedFreehand(); void toolsClosedPolyline(); void toolsClosedQuadricBezierCurve(); void toolsClosedCubicBezierCurve(); // extra menu void extraProperties(); void extraRaise(); void extraLower(); void extraRotate(); void extraSendBackward(); void extraBringForward(); void extraArrangePopup(); void extraShadow(); void extraBackground(); void extraLayout(); void extraConfigure(); void extraLineBegin(); void extraLineEnd(); void extraWebPres(); void extraMSPres(); void extraCreateTemplate(); void extraDefaultTemplate(); void extraGroup(); void extraUnGroup(); void extraPenStyle( int newStyle ); void extraPenWidth( double newWidth ); void configureCompletion(); void extraAlignObjLeft(); void extraAlignObjCenterH(); void extraAlignObjRight(); void extraAlignObjTop(); void extraAlignObjCenterV(); void extraAlignObjBottom(); // screen menu void screenConfigPages(); void screenAssignEffect(); void screenTransEffect(); void screenStart(); void screenStartFromFirst(); void screenStop(); void screenPause(); void screenFirst(); /** * Go to previous step of the presentation. * gotoPreviousPage: if is set to true go to beginning of the * previous page. */ void screenPrev( bool gotoPreviousPage = false ); /** * Go to the next step of the presentation. * gotoNextPage: if is set to true go to beginning of the * next page. */ void screenNext( bool gotoNextPage = false ); void screenLast(); void screenSkip(); // text toolbar void sizeSelected( int size ); void fontSelected( const TQString &fontFamily ); void textBold(); void textItalic(); void textUnderline(); void textStrikeOut(); void textColor(); void textAlignLeft(); void textAlignCenter(); void textAlignRight(); void textAlignBlock(); void mtextFont(); void slotCounterStyleSelected(); void textDepthPlus(); void textDepthMinus(); void textContentsToHeight(); void textObjectToContents(); void textInsertPageNum(); void textDefaultFormat(); // color bar void penChosen(); void brushChosen(); void skipToPage( int _num ); void nextPage(); void prevPage(); /** * Update a given item in the sidebar */ void updateSideBarItem( KPrPage * page ); void addSideBarItem( int pos ); void moveSideBarItem( int oldPos, int newPos ); void removeSideBarItem( int pos ); //statusbar updates void updatePageInfo(); void updateObjectStatusBarItem(); void pageNumChanged(); void updateSideBarMenu(); void objectSelectedChanged(); void renamePageTitle(); void picViewOriginalSize(); void picViewOrig640x480(); void picViewOrig800x600(); void picViewOrig1024x768(); void picViewOrig1280x1024(); void picViewOrig1600x1200(); void chPic(); void imageEffect(); void textSubScript(); void textSuperScript(); void slotSpecialChar(TQChar, const TQString &); void slotSpecialCharDlgClosed(); void insertLink(); void changeLink(); void copyLink(); void removeLink(); void addToBookmark(); void slotSoftHyphen(); void slotNonbreakingSpace(); void slotNonbreakingHyphen(); void slotLineBreak(); void slotIncreaseNumberingLevel(); void slotDecreaseNumberingLevel(); void extraAutoFormat(); void slotSpellCheck(); void spellCheckerDone( const TQString & ); void spellCheckerCancel(); void startKSpell(); void spellAddAutoCorrect (const TQString & originalword, const TQString & newword); void spellCheckerMisspelling( const TQString &, int ); void spellCheckerCorrected( const TQString &, int, const TQString & ); void alignChanged( int ); void formatParagraph(); void changeNbOfRecentFiles(int _nb); void insertVariable(); void insertCustomVariable(); void insertNewCustomVariable(); void refreshCustomMenu(); void editCustomVars (); void openLink(); void increaseFontSize(); void decreaseFontSize(); void tabListChanged( const KoTabulatorList & tabList ); void newLeftIndent( double _leftIndent); void newFirstIndent( double _firstIndent); void newRightIndent( double _rightIndent); void slotUpdateRuler(); void slotHRulerDoubleClicked( double ptpos ); void slotHRulerDoubleClicked(); void changeCaseOfText(); void slotStyleSelected(); void textStyleSelected( int ); void extraStylist(); void slotAllowAutoFormat(); void slotCompletion(); void removeComment(); void copyTextOfComment(); //zoom menu void zoomMinus(); void zoomPageWidth(); void zoomEntirePage(); void zoomPlus(); void zoomSelectedObject(); void zoomPageHeight(); void zoomAllObject(); void flipHorizontal(); void flipVertical(); void closeObject(); void duplicateObj(); void applyAutoFormat(); void createStyleFromSelection(); void alignVerticalTop(); void alignVerticalBottom(); void alignVerticalCenter(); void savePicture(); void autoSpellCheck(); void insertFile(); void editCustomVariable(); void importStyle(); void backgroundPicture(); void updateBgSpellCheckingState(); void updatePresentationButton(bool); void refreshGroupButton(); void slotAddIgnoreAllWord(); void addWordToDictionary(); void customSlideShow(); void displayObjectFromMasterPage(); void displayBackground(); void slotUnitChanged(KoUnit::Unit); void documentModified( bool ); public: // create GUI virtual void createGUI(); // get current pagenum, 1-based unsigned int getCurrPgNum() const; /** * Recalculate the currPgNum from the activePage of the canvas * This is necessary after a page has inserted. */ void recalcCurrentPageNum(); // return pointer to document KPrDocument *kPresenterDoc() const {return m_pKPresenterDoc; } // properties void changePicture( const TQString & ); KPrCanvas* getCanvas() const { return m_canvas;} void setRulerMouseShow( bool _show ); void setRulerMousePos( int mx, int my ); // set scrollbar ranges void setRanges(); KoRuler *getHRuler() const { return h_ruler; } KoRuler *getVRuler() const { return v_ruler; } KoTabChooser *getTabChooser() const { return tabChooser; } TQScrollBar *getHScrollBar() const { return horz; } TQScrollBar *getVScrollBar() const { return vert; } /** * @brief Show the rect where object lies * * It will move the screen to the top right corner of object * when it is not allready totaly visible on the screen. * * @param object which should be shown */ void showObjectRect( const KPrObject * object ); PieType getPieType() const { return pieType; } int getPieAngle() const { return pieAngle; } int getPieLength() const { return pieLength; } KoPen getPen() const { return pen; } TQBrush getBrush() const { return brush; } LineEnd getLineBegin() const { return lineBegin; } LineEnd getLineEnd() const{ return lineEnd; } TQColor getGColor1() const { return gColor1; } TQColor getGColor2() const { return gColor2; } BCType getGType() const { return gType; } FillType getFillType() const { return fillType; } bool getGUnbalanced() const { return gUnbalanced; } int getGXFactor() const { return gXFactor; } int getGYFactor() const { return gYFactor; } TKSelectColorAction* getActionBrushColor() const { return actionBrushColor; } TKSelectColorAction* getActionPenColor() const { return actionPenColor; } void setPieType(PieType _pieType) { pieType = _pieType; } void setPieAngle(int _pieAngle) { pieAngle = _pieAngle; } void setPieLength(int _pieLength) { pieLength = _pieLength; } void setPen(KoPen _pen) { pen = _pen; } void setBrush(TQBrush _brush) { brush = _brush; } void setLineBegin(LineEnd _lineBegin) { lineBegin = _lineBegin; } void setLineEnd(LineEnd _lineEnd){ lineEnd = _lineEnd; } void setGColor1(TQColor _gColor1) { gColor1 = _gColor1; } void setGColor2(TQColor _gColor2) { gColor2 = _gColor2; } void setGType(BCType _gType) { gType = _gType; } void setFillType(FillType _fillType) { fillType = _fillType; } void setGUnbalanced(bool _gUnbalanced) { gUnbalanced = _gUnbalanced; } void setGXFactor(int _gXFactor) { gXFactor = _gXFactor; } void setGYFactor(int _gYFactor) { gYFactor = _gYFactor; } void setTool( ToolEditMode toolEditMode ); int getRndX() const { return rndX; } int getRndY() const { return rndY; } void setRndX(int _rndX) { rndX = _rndX; } void setRndY(int _rndY) { rndY = _rndY; } // TQFont &currFont() { return tbFont; } // TQColor &currColor() { return tbColor; } void enableWebPres(); void enableMSPres(); /** * Overloaded from View */ bool doubleClickActivation() const; /** * Overloaded from View */ TQWidget* canvas() const; /** * Overloaded from View */ int canvasXOffset() const; /** * Overloaded from View */ int canvasYOffset() const; /** * Rebuild the whole sidebar */ void updateSideBar(); void refreshPageButton(); void setCanvasXOffset( int _x ); void setCanvasYOffset( int _y ); void openPopupMenuObject( const TQString & name , const TQPoint & _point ); void openPopupMenuMenuPage( const TQPoint & _point ); void openPopupMenuSideBar(const TQPoint & _point); void openPopupMenuZoom( const TQPoint & _point ); void penColorChanged( const KoPen & _pen ); void brushColorChanged( const TQBrush & _brush ); /** * Restart the timer for going to the next page. * This is used in automatic presentation mode. */ void restartAutoPresTimer(); /** * Continue the stopped timer for going to the next page. * This is used in automatic presentation mode. */ void continueAutoPresTimer(); /** * Stop the timer for going to the next page. * This is used in automatic presentation mode. */ void stopAutoPresTimer(); /** * Set the timer for going to next step to sec seconds. * This is used in automatic presentation mode. */ void setAutoPresTimer( int sec ); void showCounter( KoParagCounter &c ); TQPopupMenu * popupMenu( const TQString& name ); void showRulerIndent( double _leftMargin, double _firstLine, double _rightMargin, bool rtl ); void reorganize(); // For KPrNoteBar KPrNoteBar *getNoteBar() const { return notebar; } // Used by Page to plug/unplug the datatool actions TQPtrList& actionList() { return m_actionList; } // Used by Page to plug/unplug the variable actions TQPtrList &variableActionList() { return m_variableActionList; } // for Polygon object bool getCheckConcavePolygon() const { return checkConcavePolygon; } int getCornersValue() const { return cornersValue; } int getSharpnessValue() const { return sharpnessValue; } void setCheckConcavePolygon(bool _concavePolygon) { checkConcavePolygon = _concavePolygon; } void setCornersValue(int _cornersValue) { cornersValue = _cornersValue; } void setSharpnessValue(int _sharpnessValue) { sharpnessValue = _sharpnessValue; } // for Picture Object PictureMirrorType getPictureMirrorType() const { return mirrorType; } int getPictureDepth() const { return depth; } bool getPictureSwapRGB() const { return swapRGB; } bool getPictureGrayscal() const { return grayscal; } int getPictureBright() const { return bright; } /** * Set the duration of the given page ( zero based ). * This reads out m_duration and adds it to the given page. * m_duration is restarted. */ void setPageDuration( int _pgNum ); /** * @brief Zoom the rect * * @param rect The rect which should be zoomed to. */ void setZoomRect( const KoRect & rect ); void changeVerticalAlignmentStatus(VerticalAlignmentType _type ); void closeTextObject(); void deSelectAllObjects(); void insertDirectCursor(bool b); void updateDirectCursorButton(); void setEditMaster( bool editMaster ); protected slots: // dialog slots void backOk( KPrBackDialog*, bool ); void afChooseOk( const TQString & ); void slotAfchooseCanceled(); void propertiesOk(); void pgConfOk(); void rotateOk(); void shadowOk(); void pddClosed(); // scrolling void scrollH( int ); void scrollV( int ); // textobject void fontChanged( const TQFont & ); void colorChanged( const TQColor &color ); void extraLineBeginNormal(); void extraLineBeginArrow(); void extraLineBeginRect(); void extraLineBeginCircle(); void extraLineBeginLineArrow(); void extraLineBeginDimensionLine(); void extraLineBeginDoubleArrow(); void extraLineBeginDoubleLineArrow(); void setExtraLineBegin(LineEnd lb); void extraLineEndNormal(); void extraLineEndArrow(); void extraLineEndRect(); void extraLineEndCircle(); void extraLineEndLineArrow(); void extraLineEndDimensionLine(); void extraLineEndDoubleArrow(); void extraLineEndDoubleLineArrow(); void setExtraLineEnd(LineEnd le); void setExtraPenStyle( Qt::PenStyle style ); void setExtraPenWidth( double width ); /** * Restart the presenation from the first shown slide. * This only works in automatic presentation and infinite loop mode. */ void restartPresentation() { m_autoPresRestart = true; } /** * Finish the automatic presentation mode. * This only works in automatic presentation mode. */ void stopAutomaticPresentation() { m_autoPresStop = true; } void newPageLayout( const KoPageLayout &_layout ); void openPageLayoutDia() { extraLayout(); } void unitChanged( KoUnit::Unit ); void doAutomaticScreenPres(); void getPageMouseWheelEvent( TQWheelEvent *e ); void updateRuler(); void refreshAllVariable(); void slotViewFormattingChars(); void slotUpdateScrollBarRanges(); void addGuideLine(); void refreshRuler( bool state ); void slotApplyFont(); void slotApplyParag(); void slotObjectEditChanged(); void slotChangeCutState(bool ); void insertDirectCursor(); void slotCorrectWord(); void editFindNext(); void editFindPrevious(); void initialLayoutOfSplitter(); virtual void slotChildActivated(bool a); void loadingFinished(); protected: virtual void resizeEvent( TQResizeEvent* ); virtual void dragEnterEvent( TQDragEnterEvent *e ); virtual void dragMoveEvent( TQDragMoveEvent *e ); virtual void dragLeaveEvent( TQDragLeaveEvent *e ); virtual void dropEvent( TQDropEvent *e ); virtual void keyPressEvent( TQKeyEvent* ); virtual void guiActivateEvent( KParts::GUIActivateEvent *ev ); // GUI void setupActions(); void setupPopupMenus(); void setupScrollbars(); void setupRulers(); void startScreenPres( int pgNum = -1 ); virtual void updateReadWrite( bool readwrite ); void addVariableActions( int type, const TQStringList & texts, KActionMenu * parentMenu, const TQString & menuText ); void showParagraphDialog( int initialPage = -1, double initialTabPos = 0.0 ); TQValueList spellAddTextObject() const; bool switchInOtherPage( const TQString & text ); void openThePresentationDurationDialog(); TQString presentationDurationDataFormatChange( int _time ); int getZoomEntirePage() const; KCommand * applyAutoFormatToCurrentPage( const TQPtrList & lst); void textStyleSelected( KoParagStyle *_sty ); /* * create a command which sets the pen according to the flags * for the selected objects on the active and sticky page */ KCommand * getPenCmd( const TQString &name, KoPen pen, LineEnd lb, LineEnd le, int flags ); void spellCheckerRemoveHighlight(); void updateNoteBarText(); private: void clearSpellChecker(bool cancelSpellCheck = false); // ********** variables ********** // document KPrDocument *m_pKPresenterDoc; // flags /** * Set to true if the presentation sould be restarted. * This only works in automatic presentation and infinite loop mode. */ bool m_autoPresRestart; /** * Set to true if the presentation sould be stoped. * This only works in automatic presentation mode. */ bool m_autoPresStop; bool m_screenSaverWasEnabled; bool m_dpmsWasEnabled; // right button popup menus TQPopupMenu *rb_lbegin, *rb_lend; TQPopupMenu *m_arrangeObjectsPopup; TQPtrList m_actionList; // for the kodatatools TQPtrList m_variableActionList; // scrollbars TQScrollBar *vert, *horz; // dialogs AFChoose *afChoose; KPrPropertyEditor *m_propertyEditor; KPrPgConfDia *pgConfDia; KPrRotationDialogImpl *rotateDia; KPrShadowDialogImpl *shadowDia; KPrImageEffectDia *imageEffectDia; KPrPresDurationDia *presDurationDia; // default pen and brush KoPen pen; TQBrush brush; LineEnd lineBegin; LineEnd lineEnd; TQColor gColor1, gColor2; BCType gType; FillType fillType; PieType pieType; bool gUnbalanced; int gXFactor, gYFactor; int pieLength, pieAngle; int rndX, rndY; // for Convex/Concave Polygon bool checkConcavePolygon; int cornersValue; int sharpnessValue; /// used to save mouse pos TQPoint m_mousePos; // for Picture Object PictureMirrorType mirrorType; int depth; bool swapRGB; bool grayscal; int bright; // the page KPrCanvas *m_canvas; KoRuler *h_ruler, *v_ruler; KoTabChooser *tabChooser; // text toolbar values TQFont tbFont; int tbAlign; TQColor tbColor; bool m_bShowGUI; bool presStarted; /** * Indicates if the master page is edited */ bool m_editMaster; bool allowWebPres; bool allowMSPres; int currPg; // 0-based TQSize oldSize; int screensaver_pid; // Statusbar items TQLabel * m_sbPageLabel; // 'Current page number and page count' label TQLabel * m_sbObjectLabel; // Info about selected object TQLabel *m_sbSavingLabel; // use when saving file KStatusBarLabel* m_sbModifiedLabel; KStatusBarLabel* m_sbUnitLabel; KStatusBarLabel* m_sbZoomLabel; // actions KAction *actionEditCut; KAction *actionEditCustomVars; KAction *actionEditCopy; KAction *actionEditPaste; KAction *actionEditDelete; KAction *actionEditSelectAll; KAction *actionEditDeSelectAll; KAction *actionEditCopyPage; KAction *actionEditDuplicatePage; KAction *actionEditDelPage; KToggleAction *actionViewShowSideBar; KToggleAction *actionViewShowNoteBar; KToggleAction *actionViewSlideMaster; KToggleAction *actionViewShowGuideLine; KToggleAction *actionViewFormattingChars; KToggleAction *actionViewShowGrid; KToggleAction *actionViewSnapToGrid; KAction *actionInsertPage; KAction *actionInsertPicture; KToggleAction *actionToolsMouse; KToggleAction *actionToolsRotate; KToggleAction *actionToolsZoom; KToggleAction *actionToolsLine; KToggleAction *actionToolsRectangle; KToggleAction *actionToolsCircleOrEllipse; KToggleAction *actionToolsPie; KToggleAction *actionToolsText; KToggleAction *actionToolsAutoform; KToggleAction *actionToolsDiagramm; KToggleAction *actionToolsTable; KToggleAction *actionToolsFormula; KToggleAction *actionToolsFreehand; KToggleAction *actionToolsPolyline; KToggleAction *actionToolsQuadricBezierCurve; KToggleAction *actionToolsCubicBezierCurve; KToggleAction *actionToolsConvexOrConcavePolygon; KToggleAction *actionToolsClosedFreehand; KToggleAction *actionToolsClosedPolyline; KToggleAction *actionToolsClosedQuadricBezierCurve; KToggleAction *actionToolsClosedCubicBezierCurve; KoPartSelectAction *actionToolsObject; KActionMenu *actionToolsLinePopup; KActionMenu *actionToolsShapePopup; KActionMenu *actionToolsClosedLinePopup; KAction *actionTextFont; KFontSizeAction *actionTextFontSize; KFontAction *actionTextFontFamily; KToggleAction *actionTextAlignLeft; KToggleAction *actionTextAlignCenter; KToggleAction *actionTextAlignRight; KToggleAction *actionTextAlignBlock; KActionMenu *actionFormatBullet; KActionMenu *actionFormatNumber; KAction *actionTextDepthPlus; KAction *actionTextDepthMinus; KAction *actionTextExtentCont2Height; KAction *actionTextExtendObj2Cont; KToggleAction *actionTextBold; KToggleAction *actionTextItalic; KToggleAction *actionTextUnderline; KToggleAction *actionFormatStrikeOut; KAction *actionTextInsertPageNum; KAction *actionExtraProperties; KAction *actionExtraRaise; KAction *actionExtraLower; KAction *actionExtraBringForward; KAction *actionExtraSendBackward; KActionMenu *actionExtraArrangePopup; KAction *actionExtraRotate; KAction *actionExtraShadow; KActionMenu *actionExtraAlignObjsPopup; KAction *actionExtraAlignObjLeft; KAction *actionExtraAlignObjCenterH; KAction *actionExtraAlignObjRight; KAction *actionExtraAlignObjTop; KAction *actionExtraAlignObjCenterV; KAction *actionExtraAlignObjBottom; KAction *actionExtraBackground; KAction *actionExtraLayout; KAction *actionExtraConfigure; KAction *actionExtraWebPres; KAction *actionExtraMSPres; KAction *actionExtraCreateTemplate; KAction *actionExtraLineBegin; KAction *actionExtraLineEnd; KAction *actionExtraGroup; KAction *actionExtraUnGroup; KoLineStyleAction *actionExtraPenStyle; KoLineWidthAction *actionExtraPenWidth; KAction *actionScreenConfigPages; KAction *actionScreenAssignEffect; KAction *actionScreenTransEffect; KAction *actionScreenStart; KAction *actionScreenStartFromFirst; KAction *actionScreenStop; KAction *actionScreenPause; KAction *actionScreenFirst; KAction *actionScreenPrev; KAction *actionScreenNext; KAction *actionScreenLast; KAction *actionScreenSkip; KAction *actionEditFind; KAction *actionEditFindNext; KAction *actionEditFindPrevious; KAction *actionEditReplace; KAction *actionCustomSlideShow; KAction *actionColorBar; KAction *actionExtraDefaultTemplate; TKSelectColorAction* actionBrushColor; TKSelectColorAction* actionPenColor; TKSelectColorAction* actionTextColor; KAction *actionResizeTextObject; KAction *actionExtendObjectHeight; KAction *actionObjectProperties; KAction *actionRenamePage; KAction *actionPicOriginalSize; KAction *actionPic640x480; KAction *actionPic800x600; KAction *actionPic1024x768; KAction *actionPic1280x1024; KAction *actionPic1600x1200; KAction *actionChangePic; KAction *actionExtraSpellCheck; KAction *actionFormatDefault; KAction *actionImageEffect; KAction *actionInsertComment; KAction *actionEditComment; KAction *actionRemoveComment; KAction *actionCopyTextOfComment; KAction *actionImportStyle; DCOPObject *dcop; TQToolButton *pgNext, *pgPrev; KPrSideBar *sidebar; KPrNoteBar *notebar; TQSplitter *splitter; PageBase *pageBase; KToggleAction *actionFormatSuper; KToggleAction *actionFormatSub; KToggleAction *m_actionExtraHeader; KToggleAction *m_actionExtraFooter; KAction* actionInsertSpecialChar; KAction *actionInsertLink; KAction * actionChangeLink; KAction *actionCopyLink; KAction *actionRemoveLink; KAction *actionAddLinkToBookmak; KAction *actionFormatParag; KAction *actionOpenLink; KAction *actionIncreaseFontSize; KAction *actionDecreaseFontSize; KAction *actionChangeCase; KAction *actionRefreshAllVariable; KSelectAction *actionViewZoom; KSelectAction *actionFormatStyle; KToggleAction *actionAllowAutoFormat; KToggleAction *actionDisplayObjectFromMasterPage; KToggleAction *actionDisplayBackgroundPage; KAction *actionFormatStylist; KAction *actionAddGuideLine; KAction *actionConfigureCompletion; KAction *actionZoomMinus; KAction *actionZoomPageWidth; KAction *actionZoomEntirePage; KAction *actionZoomPlus; KAction *actionZoomSelectedObject; KAction *actionZoomPageHeight; KAction *actionZoomAllObject; KAction *actionFlipHorizontal; KAction *actionFlipVertical; KAction *actionCloseObject; KAction *actionDuplicateObj; KAction *actionApplyAutoFormat; KAction *actionCreateStyleFromSelection; KAction *actionSavePicture; KAction *actionSaveBackgroundPicture; KAction *actionInsertFile; KAction *actionSpellIgnoreAll; KToggleAction *actionAlignVerticalTop; KToggleAction *actionAlignVerticalBottom; KToggleAction *actionAlignVerticalCenter; KToggleAction *actionAllowBgSpellCheck; KAction *actionEditCustomVarsEdit; KActionMenu *actionFormatStyleMenu; KToggleAction *actionInsertDirectCursor; KAction *actionAddWordToPersonalDictionary; /// timer for automatic presentation mode TQTimer m_autoPresTimer; /// time for messuring the elapsed time of the timer TQTime m_autoPresTime; /// the elapsed time if the timer gets stopped in milliseconds int m_autoPresElapsedTime; /// the value of m_autoPresTimer in milliseconds int m_autoPresTimerValue; /// true if the timer is connected to doAutomaticScreenPres bool m_autoPresTimerConnected; /// timer for duration of a page TQTime m_duration; /// list for saving the duration of the pages TQValueList m_presentationDurationList; KoCharSelectDia *m_specialCharDlg; // store the currently selected line-tool enum CurrentLineTool { LtLine = 1, LtFreehand = 2, LtPolyline = 4, LtQuadricBezier = 8, LtCubicBezier = 16 }; CurrentLineTool m_currentLineTool; // store the currently selected shape-tool enum CurrentShapeTool { StRectangle = 1, StCircle = 2, StPie = 4, StPolygon = 8 }; CurrentShapeTool m_currentShapeTool; // store the currently selected closed-line-tool enum CurrentClosedLineTool { CltFreehand = 1, CltPolyline = 2, CltQuadricBezier = 4, CltCubicBezier = 8 }; CurrentClosedLineTool m_currentClosedLineTool; // Spell-checking struct { KoSpell *kospell; KMacroCommand * macroCmdSpellCheck; TQStringList replaceAll; KoTextIterator * textIterator; KSpell2::Dialog *dlg; } m_spell; KSpell2::Broker::Ptr m_broker; KActionMenu *actionInsertVariable; KActionMenu *actionInsertCustom; struct VariableDef { int type; int subtype; }; typedef TQMap VariableDefMap; VariableDefMap m_variableDefMap; KoSearchContext *m_searchEntry, *m_replaceEntry; KPrFindReplace *m_findReplace; KoFontDia *m_fontDlg; KoParagDia *m_paragDlg; int m_switchPage; int m_initSwitchPage; int xOffsetSaved, yOffsetSaved; // saved when going fullscreen bool m_bDisplayFieldCode; //save state before to go to presentation mode }; #endif