summaryrefslogtreecommitdiff
path: root/sd/source/ui
diff options
context:
space:
mode:
authorRüdiger Timm <rt@openoffice.org>2004-11-26 18:55:26 +0000
committerRüdiger Timm <rt@openoffice.org>2004-11-26 18:55:26 +0000
commit3bc9625a05e607f3f0075b3022ad992a54fca0c3 (patch)
treee942e904a087008d534a75c03b8a12b547249670 /sd/source/ui
parent26593843a815dab282f4ecdb853ed8b5410c5d8b (diff)
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/09/29 16:27:04 af 1.1.2.17: #i34804# Using new EventMultiplexer class. 2004/09/26 19:01:43 cl 1.1.2.16: added animation undo 2004/09/12 22:53:13 cl 1.1.2.15: added text only effects ui support 2004/09/12 18:24:15 cl 1.1.2.14: added keyboard and hc support 2004/09/09 14:24:14 cl 1.1.2.13: finished effect preview 2004/09/02 09:14:17 cl 1.1.2.12: moved effect and transition presets access to a singleton 2004/08/29 22:32:57 cl 1.1.2.11: added support for trigger effects 2004/08/28 22:41:26 cl 1.1.2.10: removed old presentation code 2004/08/22 22:24:47 cl 1.1.2.9: dependency clean up and more text group support 2004/08/19 09:26:59 cl 1.1.2.8: enhanced text group support 2004/08/12 17:07:52 cl 1.1.2.7: added custom animations toolpanel 2004/07/28 11:03:58 cl 1.1.2.6: #i31376# added strings for translation 2004/06/29 07:19:24 cl 1.1.2.5: added sound listbox 2004/06/14 11:39:46 cl 1.1.2.4: more ui improvements 2004/06/02 09:20:23 cl 1.1.2.3: new smile ui 2004/05/28 12:43:41 cl 1.1.2.2: new animations ui 2004/05/04 14:43:34 cl 1.1.2.1: added initial smil ui
Diffstat (limited to 'sd/source/ui')
-rw-r--r--sd/source/ui/animations/CustomAnimationPane.hxx203
1 files changed, 203 insertions, 0 deletions
diff --git a/sd/source/ui/animations/CustomAnimationPane.hxx b/sd/source/ui/animations/CustomAnimationPane.hxx
new file mode 100644
index 000000000000..392858632b87
--- /dev/null
+++ b/sd/source/ui/animations/CustomAnimationPane.hxx
@@ -0,0 +1,203 @@
+/*************************************************************************
+ *
+ * $RCSfile: CustomAnimationPane.hxx,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: rt $ $Date: 2004-11-26 19:55:26 $
+ *
+ * The Contents of this file are made available subject to the terms of
+ * either of the following licenses
+ *
+ * - GNU Lesser General Public License Version 2.1
+ * - Sun Industry Standards Source License Version 1.1
+ *
+ * Sun Microsystems Inc., October, 2000
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2000 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * 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
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ *
+ * Sun Industry Standards Source License Version 1.1
+ * =================================================
+ * The contents of this file are subject to the Sun Industry Standards
+ * Source License Version 1.1 (the "License"); You may not use this file
+ * except in compliance with the License. You may obtain a copy of the
+ * License at http://www.openoffice.org/license.html.
+ *
+ * Software provided under this License is provided on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
+ * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
+ * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
+ * See the License for the specific provisions governing your rights and
+ * obligations concerning the Software.
+ *
+ * The Initial Developer of the Original Code is: Sun Microsystems, Inc.
+ *
+ * Copyright: 2000 by Sun Microsystems, Inc.
+ *
+ * All Rights Reserved.
+ *
+ * Contributor(s): _______________________________________
+ *
+ *
+ ************************************************************************/
+
+#ifndef _SD_CUSTOMANIMATIONPANE_HXX
+#define _SD_CUSTOMANIMATIONPANE_HXX
+
+#ifndef _COM_SUN_STAR_DRAWING_XDRAWVIEW_HPP_
+#include <com/sun/star/drawing/XDrawView.hpp>
+#endif
+
+#ifndef _COM_SUN_STAR_FRAME_XMODEL_HPP_
+#include <com/sun/star/frame/XModel.hpp>
+#endif
+
+#ifndef _SV_DIALOG_HXX
+#include <vcl/dialog.hxx>
+#endif
+
+#ifndef _SD_CUSTOMANIMATIONPRESET_HXX
+#include "CustomAnimationPreset.hxx"
+#endif
+#ifndef _SD_CUSTOMANIMATIONLIST_HXX
+#include "CustomAnimationList.hxx"
+#endif
+
+class PushButton;
+class FixedLine;
+class FixedText;
+class ListBox;
+class ComboBox;
+class CheckBox;
+class SdDrawDocument;
+
+namespace com { namespace sun { namespace star { namespace animations {
+ class XAnimationNode;
+} } } }
+
+namespace sd { namespace tools {
+class EventMultiplexerEvent;
+} }
+
+namespace sd {
+
+class PropertyControl;
+class STLPropertySet;
+class ViewShellBase;
+
+// --------------------------------------------------------------------
+
+class CustomAnimationPane : public Control, public ICustomAnimationListController
+{
+public:
+ CustomAnimationPane( ::Window* pParent, ViewShellBase& rBase, const Size& rMinSize );
+ virtual ~CustomAnimationPane();
+
+ // callbacks
+ void onSelectionChanged();
+ void onChangeCurrentPage();
+ void onChange( bool bCreate );
+ void onRemove();
+ void onChangeStart();
+ void onChangeStart( sal_Int16 nNodeType );
+ void onChangeProperty();
+ void onChangeSpeed();
+
+ // methods
+ void preview( const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& xAnimationNode );
+
+ // Control
+ virtual void Resize();
+
+ // ICustomAnimationListController
+ virtual void onSelect();
+ virtual void onDoubleClick();
+ virtual void onContextMenu( USHORT nSelectedPopupEntry );
+
+ void addUndo();
+
+private:
+ void addListener();
+ void removeListener();
+ void updateLayout();
+ void updateControls();
+
+ void showOptions( USHORT nPage = 0 );
+ void moveSelection( bool bUp );
+ void onPreview( bool bForcePreview );
+
+ STLPropertySet* createSelectionSet();
+ void changeSelection( STLPropertySet* pResultSet, STLPropertySet* pOldSet );
+
+ ::com::sun::star::uno::Any getProperty1Value( sal_Int32 nType, CustomAnimationEffectPtr pEffect );
+ bool setProperty1Value( sal_Int32 nType, CustomAnimationEffectPtr pEffect, const ::com::sun::star::uno::Any& rValue );
+
+ DECL_LINK( implControlHdl, Control* );
+ DECL_LINK( implPropertyHdl, Control* );
+ DECL_LINK(EventMultiplexerListener, tools::EventMultiplexerEvent*);
+
+private:
+ ViewShellBase& mrBase;
+
+ const CustomAnimationPresets& mrPresets;
+
+ FixedLine* mpFLModify;
+ PushButton* mpPBAddEffect;
+ PushButton* mpPBChangeEffect;
+ PushButton* mpPBRemoveEffect;
+ FixedLine* mpFLEffect;
+ FixedText* mpFTStart;
+ ListBox* mpLBStart;
+ FixedText* mpFTProperty;
+ PropertyControl* mpLBProperty;
+ PushButton* mpPBPropertyMore;
+ FixedText* mpFTSpeed;
+ ComboBox* mpCBSpeed;
+ CustomAnimationList* mpCustomAnimationList;
+ FixedText* mpFTChangeOrder;
+ PushButton* mpPBMoveUp;
+ PushButton* mpPBMoveDown;
+ FixedLine* mpFLSeperator1;
+ PushButton* mpPBPlay;
+ PushButton* mpPBSlideShow;
+ FixedLine* mpFLSeperator2;
+ CheckBox* mpCBAutoPreview;
+
+ String maStrModify;
+ String maStrProperty;
+
+ sal_Int32 mnPropertyType;
+
+ Size maMinSize;
+
+ EffectSequence maListSelection;
+ ::com::sun::star::uno::Any maViewSelection;
+
+ MainSequencePtr mpMainSequence;
+
+ ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XDrawPage > mxCurrentPage;
+ ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XDrawView > mxView;
+ ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel > mxModel;
+};
+
+};
+
+#endif // _SD_CUSTOMANIMATIONPANE_HXX