| /************************************************************** |
| * |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| * |
| *************************************************************/ |
| |
| |
| |
| #ifndef _LAYOUT_HXX |
| #define _LAYOUT_HXX |
| |
| #include <com/sun/star/awt/XLayoutContainer.hpp> |
| #include <com/sun/star/uno/XInterface.hpp> |
| #include <com/sun/star/util/Color.hpp> |
| #include <i18npool/lang.h> |
| #include <toolkit/dllapi.h> |
| #include <tools/gen.hxx> |
| #include <tools/link.hxx> |
| #include <tools/string.hxx> |
| #include <vcl/bitmap.hxx> |
| #include <vcl/combobox.h> |
| #include <tools/fldunit.hxx> |
| #include <vcl/lstbox.h> |
| #include <tools/wintypes.hxx> |
| |
| class Button; |
| class ComboBox; |
| class Color; |
| class Control; |
| class Dialog; |
| class Edit; |
| class Font; |
| class Image; |
| class ListBox; |
| class MapMode; |
| class MultiListBox; |
| class NotifyEvent; |
| class Pointer; |
| class PushButton; |
| class RadioButton; |
| class ResId; |
| struct SfxChildWinInfo; |
| //class SvxFontListBox; |
| //class SvxLanguageBox; |
| class TabControl; |
| class TabPage; |
| class VCLXRadioButton; |
| class VCLXWindow; |
| class Window; |
| |
| namespace layoutimpl |
| { |
| class VCLXTabControl; |
| } |
| |
| class VCLXTabControl; |
| |
| namespace com { namespace sun { namespace star { namespace awt { class XWindow; } } } } |
| |
| namespace layout |
| { |
| |
| namespace css = ::com::sun::star; |
| |
| typedef css::uno::Reference< css::uno::XInterface > PeerHandle; |
| class ContextImpl; |
| class TOOLKIT_DLLPUBLIC Context |
| { |
| ContextImpl *pImpl; |
| public: |
| Context( char const* pPath ); |
| virtual ~Context(); |
| PeerHandle GetPeerHandle( char const* id, sal_uInt32 nId = 0 ) const; |
| void setToplevel( PeerHandle xToplevel ); |
| PeerHandle getToplevel(); |
| PeerHandle getRoot(); |
| }; |
| |
| // make declaring wrappers easier ... |
| #define DECL_CONSTRUCTORS(t,par,defaultWinBit) \ |
| protected: \ |
| explicit t( WindowImpl *pImpl ) : \ |
| par( pImpl ) {} \ |
| char const* GetUnoName() const; \ |
| public: \ |
| t( Context *context, char const* id, sal_uInt32 nId = 0 ); \ |
| t( Window *parent, WinBits nStyle = defaultWinBit ); \ |
| t (Window *parent, ResId const &res) |
| #define DECL_GET_IMPL(t) \ |
| inline t##Impl &getImpl() const |
| |
| #define DECL_GET_WINDOW( cls ) ::cls* Get##cls() const |
| #define IMPL_GET_WINDOW( cls ) ::cls* cls::Get##cls() const { return dynamic_cast< ::cls*>( GetWindow() ); } |
| |
| #define DECL_GET_VCLXWINDOW( cls ) ::VCLX##cls* GetVCLX##cls() const |
| #define IMPL_GET_VCLXWINDOW( cls ) ::VCLX##cls* cls::Get##VCLX##cls() const { return dynamic_cast< ::VCLX##cls*>( GetVCLXWindow() ); } |
| |
| #define DECL_GET_LAYOUT_VCLXWINDOW( cls ) ::layoutimpl::VCLX##cls* GetVCLX##cls() const |
| #define IMPL_GET_LAYOUT_VCLXWINDOW( cls ) ::layoutimpl::VCLX##cls* cls::Get##VCLX##cls() const { return dynamic_cast< ::layoutimpl::VCLX##cls*>( GetVCLXWindow() ); } |
| |
| // follows the VCL inheritance hierarchy ... |
| |
| class WindowImpl; |
| class TOOLKIT_DLLPUBLIC Window |
| { |
| protected: |
| friend class WindowImpl; |
| WindowImpl *mpImpl; |
| static PeerHandle CreatePeer( Window *parent, WinBits nStyle, |
| char const* pName); |
| |
| virtual void setRes (ResId const& res); |
| |
| public: |
| DECL_GET_IMPL( Window ); |
| explicit Window( WindowImpl *pImpl ); |
| virtual ~Window(); |
| |
| PeerHandle GetPeer() const; |
| Context *getContext(); |
| |
| void Enable( bool bEnable = true ); |
| inline void Disable() { Enable( false ); } |
| void Show( bool bVisible = true ); |
| inline void Hide() { Show( false ); } |
| void GrabFocus(); |
| void FreeResource() {} |
| |
| void SetParent( ::Window *parent ); |
| virtual void ParentSet (Window *window); |
| void SetParent( Window *parent ); |
| |
| css::uno::Reference<css::awt::XWindow> GetRef() const; |
| VCLXWindow* GetVCLXWindow() const; |
| ::Window* GetWindow() const; |
| ::Window* GetParent() const; |
| |
| void SetPointer( Pointer const& pointer ); |
| Pointer const& GetPointer() const; |
| WinBits GetStyle(); |
| void SetText( rtl::OUString const& str ); |
| String GetText() const; |
| void SetStyle( WinBits style ); |
| void SetUpdateMode( bool mode ); |
| void SetHelpId( const rtl::OString& id ); |
| const rtl::OString& GetHelpId() const; |
| void EnterWait (); |
| void LeaveWait (); |
| bool IsWait () const; |
| //void Enable (bool enable=true, bool child=true); |
| //void Disable (bool child=true); |
| bool IsEnabled () const; |
| void EnableInput (bool enable=true, bool child=true); |
| bool IsInputEnabled () const; |
| |
| bool IsVisible () const; |
| bool HasChildPathFocus (bool systemWindow=false) const; |
| void SetPosPixel (Point const&); |
| Point GetPosPixel () const; |
| void SetSizePixel (Size const&); |
| Size GetSizePixel () const; |
| void SetPosSizePixel (Point const&, Size const&); |
| sal_Int32 GetCtrlTextWidth (rtl::OUString const& str) const; |
| sal_Int32 GetTextHeight () const; |
| |
| Size LogicToPixel( Size const& size ) const; |
| Size LogicToPixel( Size const& size, MapMode const& mapMode ) const; |
| |
| bool HasFocus () const; |
| Font& GetFont () const; |
| void SetFont (Font const& font); |
| virtual void Invalidate (sal_uInt8 flags=0); |
| }; |
| |
| class ControlImpl; |
| class TOOLKIT_DLLPUBLIC Control : public Window |
| { |
| DECL_GET_IMPL( Control ); |
| DECL_CONSTRUCTORS( Control, Window, 0 ); |
| |
| public: |
| ~Control (); |
| void SetGetFocusHdl (Link const& link); |
| Link& GetGetFocusHdl (); |
| void SetLoseFocusHdl (Link const& link); |
| Link& GetLoseFocusHdl (); |
| }; |
| |
| class FixedLineImpl; |
| class TOOLKIT_DLLPUBLIC FixedLine : public Control |
| { |
| DECL_GET_IMPL( FixedLine ); |
| DECL_CONSTRUCTORS( FixedLine, Control, WB_HORZ ); |
| |
| public: |
| bool IsEnabled() const; |
| }; |
| |
| class FixedTextImpl; |
| class TOOLKIT_DLLPUBLIC FixedText : public Control |
| { |
| DECL_GET_IMPL( FixedText ); |
| DECL_CONSTRUCTORS( FixedText, Control, 0 ); |
| |
| public: |
| ~FixedText (); |
| void SetText( rtl::OUString const& rStr ); |
| }; |
| |
| class FixedImageImpl; |
| class TOOLKIT_DLLPUBLIC FixedImage : public Control |
| { |
| DECL_GET_IMPL( FixedImage ); |
| DECL_CONSTRUCTORS( FixedImage, Control, 0 ); |
| public: |
| void setImage( ::Image const& ); |
| }; |
| |
| class FixedInfoImpl; |
| class TOOLKIT_DLLPUBLIC FixedInfo : public FixedText |
| { |
| DECL_GET_IMPL( FixedInfo ); |
| DECL_CONSTRUCTORS( FixedInfo, FixedText, 0 ); |
| }; |
| |
| class ImageImpl; |
| class TOOLKIT_DLLPUBLIC Image |
| { |
| ImageImpl *pImpl; |
| public: |
| Image( char const* pName ); |
| ~Image(); |
| ImageImpl &getImpl() const { return *pImpl; } |
| }; |
| |
| class ButtonImpl; |
| class TOOLKIT_DLLPUBLIC Button : public Control |
| { |
| DECL_GET_IMPL( Button ); |
| DECL_CONSTRUCTORS( Button, Control, 0 ); |
| DECL_GET_WINDOW (Button); |
| |
| public: |
| ~Button (); |
| static String GetStandardText (sal_uInt16 button_type); |
| void SetText( rtl::OUString const& rStr ); |
| bool SetModeImage (Image const& image); |
| bool SetModeImage (::Image const& image, BmpColorMode mode=BMP_COLOR_NORMAL); |
| void SetImageAlign( ImageAlign eAlign ); |
| |
| void SetClickHdl( Link const& rLink ); |
| virtual void Click() /* pure virtual? */; |
| Link& GetClickHdl (); |
| }; |
| |
| class PushButtonImpl; |
| class TOOLKIT_DLLPUBLIC PushButton : public Button |
| { |
| DECL_GET_IMPL( PushButton ); |
| DECL_CONSTRUCTORS( PushButton, Button, 0 ); |
| DECL_GET_WINDOW (PushButton); |
| |
| public: |
| ~PushButton (); |
| void Check( bool bCheck=true ); |
| bool IsChecked() const; |
| |
| void Toggle(); |
| void SetToggleHdl( Link const& rLink ); |
| }; |
| |
| class TOOLKIT_DLLPUBLIC OKButton : public PushButton |
| { |
| DECL_CONSTRUCTORS( OKButton, PushButton, WB_DEFBUTTON ); |
| }; |
| class TOOLKIT_DLLPUBLIC CancelButton : public PushButton |
| { |
| DECL_CONSTRUCTORS( CancelButton, PushButton, 0 ); |
| }; |
| class TOOLKIT_DLLPUBLIC YesButton : public PushButton |
| { |
| DECL_CONSTRUCTORS( YesButton, PushButton, WB_DEFBUTTON ); |
| }; |
| class TOOLKIT_DLLPUBLIC NoButton : public PushButton |
| { |
| DECL_CONSTRUCTORS( NoButton, PushButton, 0 ); |
| }; |
| class TOOLKIT_DLLPUBLIC RetryButton : public PushButton |
| { |
| DECL_CONSTRUCTORS( RetryButton, PushButton, 0 ); |
| }; |
| class TOOLKIT_DLLPUBLIC IgnoreButton : public PushButton |
| { |
| DECL_CONSTRUCTORS( IgnoreButton, PushButton, 0 ); |
| }; |
| class TOOLKIT_DLLPUBLIC ResetButton : public PushButton |
| { |
| DECL_CONSTRUCTORS( ResetButton, PushButton, 0 ); |
| }; |
| class TOOLKIT_DLLPUBLIC ApplyButton : public PushButton |
| { |
| DECL_CONSTRUCTORS( ApplyButton, PushButton, 0 ); |
| }; |
| class TOOLKIT_DLLPUBLIC HelpButton : public PushButton |
| { |
| DECL_CONSTRUCTORS( HelpButton, PushButton, 0 ); |
| }; |
| class TOOLKIT_DLLPUBLIC ImageButton : public PushButton |
| { |
| DECL_CONSTRUCTORS( ImageButton, PushButton, 0 ); |
| }; |
| |
| class AdvancedButtonImpl; |
| class TOOLKIT_DLLPUBLIC AdvancedButton : public PushButton |
| { |
| DECL_CONSTRUCTORS( AdvancedButton, PushButton, 0 ); |
| DECL_GET_IMPL( AdvancedButton ); |
| |
| void AddAdvanced( Window* w ); |
| void AddSimple( Window* w ); |
| void RemoveAdvanced( Window* w ); |
| void RemoveSimple( Window* w ); |
| |
| void SetAdvancedText (rtl::OUString const& text); |
| void SetSimpleText (rtl::OUString const& text); |
| rtl::OUString GetAdvancedText () const; |
| rtl::OUString GetSimpleText () const; |
| void SetDelta (int); |
| }; |
| |
| class MoreButtonImpl; |
| class TOOLKIT_DLLPUBLIC MoreButton : public AdvancedButton |
| { |
| DECL_CONSTRUCTORS( MoreButton, AdvancedButton, 0 ); |
| DECL_GET_IMPL( MoreButton ); |
| void AddWindow( Window* w ); |
| void RemoveWindow( Window* w ); |
| |
| void SetMoreText (rtl::OUString const& text); |
| void SetLessText (rtl::OUString const& text); |
| rtl::OUString GetMoreText () const; |
| rtl::OUString GetLessText () const; |
| }; |
| |
| class RadioButtonImpl; |
| class TOOLKIT_DLLPUBLIC RadioButton : public Button |
| { |
| DECL_GET_IMPL( RadioButton ); |
| DECL_CONSTRUCTORS( RadioButton, Button, 0 ); |
| DECL_GET_WINDOW( RadioButton ); |
| DECL_GET_VCLXWINDOW( RadioButton ); |
| public: |
| ~RadioButton (); |
| void Check( bool bCheck=true ); |
| bool IsChecked() const; |
| |
| void Toggle(); |
| void SetToggleHdl( Link const& rLink ); |
| }; |
| |
| class CheckBoxImpl; |
| class TOOLKIT_DLLPUBLIC CheckBox : public Button |
| { |
| DECL_GET_IMPL( CheckBox ); |
| DECL_CONSTRUCTORS( CheckBox, Button, 0 ); |
| |
| public: |
| ~CheckBox (); |
| void Check( bool bCheck=true ); |
| bool IsChecked() const; |
| |
| void Toggle(); |
| void SetToggleHdl( Link const& rLink ); |
| }; |
| |
| class EditImpl; |
| class TOOLKIT_DLLPUBLIC Edit : public Control |
| { |
| DECL_GET_IMPL( Edit ); |
| DECL_CONSTRUCTORS( Edit, Control, WB_BORDER ); |
| DECL_GET_WINDOW (Edit); |
| |
| public: |
| ~Edit (); |
| void SetText( rtl::OUString const& rStr ); |
| String GetText() const; |
| void SetModifyHdl( Link const& rLink ); |
| void SetSelection( Selection const& rSelection ); |
| }; |
| |
| class MultiLineEditImpl; |
| class TOOLKIT_DLLPUBLIC MultiLineEdit : public Edit |
| { |
| DECL_GET_IMPL( MultiLineEdit ); |
| DECL_CONSTRUCTORS( MultiLineEdit, Edit, WB_LEFT|WB_BORDER ); |
| }; |
| |
| class SpinFieldImpl; |
| class TOOLKIT_DLLPUBLIC SpinField : public Edit |
| { |
| DECL_GET_IMPL( SpinField ); |
| DECL_CONSTRUCTORS( SpinField, Edit, 0 ); |
| }; |
| |
| class FormatterBaseImpl; |
| class TOOLKIT_DLLPUBLIC FormatterBase |
| { |
| protected: |
| FormatterBaseImpl *mpFormatImpl; |
| FormatterBase( FormatterBaseImpl *pFormatImpl ); |
| }; |
| |
| class NumericFormatterImpl; |
| class TOOLKIT_DLLPUBLIC NumericFormatter : public FormatterBase |
| { |
| protected: |
| explicit NumericFormatter( FormatterBaseImpl *pImpl ); |
| NumericFormatterImpl &getFormatImpl() const; |
| public: |
| void SetMin( sal_Int64 nNewMin ); |
| void SetMax( sal_Int64 nNewMax ); |
| void SetFirst( sal_Int64 nNewFirst ); |
| void SetLast( sal_Int64 nNewLast ); |
| void SetSpinSize( sal_Int64 nNewSize ); |
| |
| void SetValue( sal_Int64 nNewValue ); |
| sal_Int64 GetValue() const; |
| }; |
| |
| class NumericFieldImpl; |
| class TOOLKIT_DLLPUBLIC NumericField : public SpinField, public NumericFormatter |
| { |
| DECL_GET_IMPL( NumericField ); |
| public: |
| NumericField( Context *context, char const* id, sal_uInt32 nId=0 ); |
| NumericField( Window *parent, WinBits nStyle ); |
| }; |
| |
| class MetricFormatterImpl; |
| // Different inheritance to save code |
| class TOOLKIT_DLLPUBLIC MetricFormatter : public FormatterBase |
| { |
| protected: |
| explicit MetricFormatter( FormatterBaseImpl *pImpl ); |
| MetricFormatterImpl &getFormatImpl() const; |
| public: |
| void SetMin( sal_Int64 nNewMin, FieldUnit nUnit=FUNIT_NONE ); |
| void SetMax( sal_Int64 nNewMax, FieldUnit nUnit=FUNIT_NONE ); |
| void SetFirst( sal_Int64 nNewFirst, FieldUnit nUnit=FUNIT_NONE ); |
| void SetLast( sal_Int64 nNewLast, FieldUnit nUnit=FUNIT_NONE ); |
| void SetValue( sal_Int64 nNewValue, FieldUnit nUnit=FUNIT_NONE ); |
| sal_Int64 GetValue( FieldUnit nUnit=FUNIT_NONE ) const; |
| |
| void SetSpinSize( sal_Int64 nNewSize ); |
| }; |
| |
| class MetricFieldImpl; |
| class TOOLKIT_DLLPUBLIC MetricField : public SpinField, public MetricFormatter |
| { |
| DECL_GET_IMPL( MetricField ); |
| public: |
| MetricField( Context *context, char const* id, sal_uInt32 nId=0 ); |
| MetricField( Window *parent, WinBits nStyle ); |
| }; |
| |
| class ComboBoxImpl; |
| class TOOLKIT_DLLPUBLIC ComboBox : public Edit |
| { |
| DECL_GET_IMPL( ComboBox ); |
| DECL_GET_WINDOW (ComboBox ); |
| DECL_CONSTRUCTORS( ComboBox, Edit, 0 ); |
| |
| public: |
| ~ComboBox (); |
| sal_uInt16 InsertEntry( String const& rStr, sal_uInt16 nPos=COMBOBOX_APPEND ); |
| void RemoveEntry( String const& rStr ); |
| void RemoveEntry( sal_uInt16 nPos ); |
| void Clear(); |
| |
| sal_uInt16 GetEntryPos( String const& rStr ) const; |
| String GetEntry( sal_uInt16 nPos ) const; |
| sal_uInt16 GetEntryCount() const; |
| |
| void SetClickHdl( Link const& rLink ); |
| void SetSelectHdl( Link const& rLink ); |
| void EnableAutocomplete (bool enable, bool matchCase=false ); |
| }; |
| |
| class ListBoxImpl; |
| class TOOLKIT_DLLPUBLIC ListBox : public Control |
| { |
| DECL_GET_IMPL( ListBox ); |
| DECL_CONSTRUCTORS( ListBox, Control, WB_BORDER ); |
| DECL_GET_WINDOW (ListBox); |
| |
| public: |
| ~ListBox (); |
| sal_uInt16 InsertEntry( String const& rStr, sal_uInt16 nPos=LISTBOX_APPEND ); |
| |
| void RemoveEntry( String const& rStr ); |
| void RemoveEntry( sal_uInt16 nPos ); |
| void Clear(); |
| |
| sal_uInt16 GetEntryPos( String const& rStr ) const; |
| String GetEntry( sal_uInt16 nPos ) const; |
| sal_uInt16 GetEntryCount() const; |
| |
| void SelectEntry( String const& rStr, bool bSelect=true ); |
| void SelectEntryPos( sal_uInt16 nPos, bool bSelect=true ); |
| |
| sal_uInt16 GetSelectEntryCount() const; |
| String GetSelectEntry( sal_uInt16 nSelIndex=0 ) const; |
| sal_uInt16 GetSelectEntryPos( sal_uInt16 nSelIndex=0 ) const; |
| |
| void SetSelectHdl (Link const& link); |
| Link& GetSelectHdl (); |
| |
| void SetClickHdl (Link const& link); |
| Link& GetClickHdl (); |
| |
| void SetDoubleClickHdl (Link const& link); |
| Link& GetDoubleClickHdl (); |
| |
| void SetEntryData (sal_uInt16 pos, void* data); |
| void* GetEntryData (sal_uInt16 pos) const; |
| |
| virtual void SetNoSelection (); |
| }; |
| |
| class MultiListBoxImpl; |
| class TOOLKIT_DLLPUBLIC MultiListBox : public ListBox |
| { |
| DECL_GET_IMPL( MultiListBox ); |
| DECL_CONSTRUCTORS( MultiListBox, ListBox, 0 ); |
| DECL_GET_WINDOW( MultiListBox ); |
| }; |
| |
| class DialogImpl; |
| class TOOLKIT_DLLPUBLIC Dialog : public Context, public Window |
| { |
| DECL_GET_WINDOW (Dialog); |
| |
| public: |
| DECL_GET_IMPL (Dialog); |
| Dialog( Window *parent, char const* xml_file, char const* id, sal_uInt32 nId=0 ); |
| Dialog( ::Window *parent, char const* xml_file, char const* id, sal_uInt32 nId=0 ); |
| ~Dialog (); |
| virtual short Execute(); |
| void EndDialog( long nResult=0 ); |
| void SetText( rtl::OUString const& rStr ); |
| void SetTitle (rtl::OUString const& rStr ); |
| bool Close (); |
| long Notify (NotifyEvent & event); |
| |
| // Sxf*Dialog |
| bool bConstruct; |
| void Initialize (SfxChildWinInfo*); |
| }; |
| |
| #define DECL_MESSAGE_BOX_CTORS(Name)\ |
| public:\ |
| Name##Box (::Window *parent, char const* message,\ |
| char const* yes=0, char const* no=0, const rtl::OString& help_id=rtl::OString(),\ |
| char const* xml_file="message-box.xml", char const* id="message-box");\ |
| Name##Box (::Window *parent, rtl::OUString const& message,\ |
| rtl::OUString yes=String (),\ |
| rtl::OUString no=String (),\ |
| const rtl::OString& help_id=rtl::OString(),\ |
| char const* xml_file="message-box.xml", char const* id="message-box");\ |
| Name##Box (::Window *parent, WinBits, char const* message,\ |
| char const* yes=0, char const* no=0, const rtl::OString& help_id=rtl::OString(),\ |
| char const* xml_file="message-box.xml", char const* id="message-box");\ |
| Name##Box (::Window *parent, WinBits, rtl::OUString const& message,\ |
| rtl::OUString yes=String (),\ |
| rtl::OUString no=String (),\ |
| const rtl::OString& help_id=rtl::OString(),\ |
| char const* xml_file="message-box.xml", char const* id="message-box")\ |
| |
| class TOOLKIT_DLLPUBLIC MessageBox : public Dialog |
| { |
| DECL_MESSAGE_BOX_CTORS(Message); |
| |
| protected: |
| FixedImage imageError; |
| FixedImage imageInfo; |
| FixedImage imageQuery; |
| FixedImage imageWarning; |
| FixedText messageText; |
| CancelButton cancelButton; |
| HelpButton helpButton; |
| IgnoreButton ignoreButton; |
| NoButton noButton; |
| RetryButton retryButton; |
| YesButton yesButton; |
| |
| void bits_init (WinBits bits, rtl::OUString const& message, |
| rtl::OUString yes, rtl::OUString, const rtl::OString& help_id); |
| void init (rtl::OUString const& message, |
| rtl::OUString const& yes, rtl::OUString const& no, const rtl::OString& help_id); |
| void init (char const* message, char const* yes, char const* no, const rtl::OString& help_id); |
| }; |
| |
| #define CLASS_MESSAGE_BOX(Name)\ |
| class TOOLKIT_DLLPUBLIC Name##Box : public MessageBox\ |
| {\ |
| DECL_MESSAGE_BOX_CTORS (Name);\ |
| } |
| |
| //CLASS_MESSAGE_BOX (Mess); |
| typedef MessageBox MessBox; |
| CLASS_MESSAGE_BOX (Error); |
| CLASS_MESSAGE_BOX (Info); |
| CLASS_MESSAGE_BOX (Query); |
| CLASS_MESSAGE_BOX (Warning); |
| |
| #undef CLASS_MESSAGE_BOX |
| |
| #undef TAB_APPEND |
| |
| class TabControlImpl; |
| class TOOLKIT_DLLPUBLIC TabControl : public Control |
| { |
| //#ifndef TAB_APPEND |
| #define TAB_APPEND 0xFFFF |
| //#endif /* !TAB_APPEND */ |
| |
| DECL_GET_IMPL (TabControl); |
| DECL_CONSTRUCTORS (TabControl, Control, 0); |
| DECL_GET_WINDOW (TabControl); |
| DECL_GET_LAYOUT_VCLXWINDOW (TabControl); |
| |
| public: |
| ~TabControl (); |
| void InsertPage (sal_uInt16 id, rtl::OUString const& title, sal_uInt16 pos=TAB_APPEND); |
| void RemovePage (sal_uInt16 id); |
| sal_uInt16 GetPageCount () const; |
| sal_uInt16 GetPageId (sal_uInt16 pos) const; |
| sal_uInt16 GetPagePos (sal_uInt16 id) const; |
| void SetCurPageId (sal_uInt16 id); |
| sal_uInt16 GetCurPageId () const; |
| void SetTabPage (sal_uInt16 id, ::TabPage* page); |
| ::TabPage* GetTabPage (sal_uInt16 id) const; |
| void SetActivatePageHdl (Link const& link); |
| Link& GetActivatePageHdl () const; |
| void SetDeactivatePageHdl (Link const& link); |
| Link& GetDeactivatePageHdl () const; |
| void SetTabPageSizePixel (Size const& size); |
| Size GetTabPageSizePixel () const; |
| }; |
| |
| class TabPageImpl; |
| class TOOLKIT_DLLPUBLIC TabPage : public Context, public Window |
| { |
| DECL_GET_IMPL( TabPage ); |
| public: |
| static ::Window* global_parent; |
| static TabControl* global_tabcontrol; |
| |
| TabPage( Window *parent, char const* xml_file, char const* id, sal_uInt32 nId=0 ); |
| TabPage( ::Window *parent, char const* xml_file, char const* id, sal_uInt32 nId=0 ); |
| ~TabPage(); |
| DECL_GET_WINDOW( TabPage ); |
| virtual void ActivatePage(); |
| virtual void DeactivatePage(); |
| }; |
| |
| class ProgressBarImpl; |
| class TOOLKIT_DLLPUBLIC ProgressBar : public Control |
| { |
| DECL_GET_IMPL( ProgressBar ); |
| DECL_CONSTRUCTORS( ProgressBar, Control, WB_BORDER ); |
| public: |
| void SetForegroundColor( css::util::Color color ); |
| void SetBackgroundColor( css::util::Color color ); |
| void SetValue( sal_Int32 i ); |
| void SetRange( sal_Int32 min, sal_Int32 max ); |
| sal_Int32 GetValue(); |
| }; |
| |
| // ----------------------------------------------------------------- |
| // layout container / helper wrappers |
| // ----------------------------------------------------------------- |
| |
| class TOOLKIT_DLLPUBLIC Container |
| { |
| protected: |
| css::uno::Reference< css::awt::XLayoutContainer > mxContainer; |
| Container( rtl::OUString const& rName, sal_Int32 nBorder ); |
| public: |
| Container( Context const* context, char const* id ); |
| |
| void Add( Window *pWindow ); |
| void Add( Container *pContainer ); |
| |
| void Remove( Window *pWindow ); |
| void Remove( Container *pContainer ); |
| void Clear(); |
| // we can't really do a GetChildren() as they don't have a common class, |
| // besides we would need to keep track of children, uh |
| |
| void ShowAll( bool bVisible ); |
| void Show(); |
| void Hide(); |
| |
| css::uno::Reference< css::awt::XLayoutContainer > getImpl() |
| { return mxContainer; } |
| }; |
| |
| class TOOLKIT_DLLPUBLIC Table : public Container |
| { |
| protected: |
| Table( sal_Int32 nBorder, sal_Int32 nColumns ); |
| public: |
| Table( Context const* context, char const* id ); |
| void Add( Window *pWindow, bool bXExpand, bool bYExpand, |
| sal_Int32 nXSpan=1, sal_Int32 nYSpan=1 ); |
| void Add( Container *pContainer, bool bXExpand, bool bYExpand, |
| sal_Int32 nXSpan=1, sal_Int32 nYSpan=1 ); |
| |
| private: |
| void setProps( css::uno::Reference< css::awt::XLayoutConstrains > xChild, |
| bool bXExpand, bool bYExpand, sal_Int32 nXSpan, sal_Int32 nYSpan ); |
| }; |
| |
| class TOOLKIT_DLLPUBLIC Box : public Container |
| { |
| protected: |
| Box( rtl::OUString const& rName, sal_Int32 nBorder, bool bHomogeneous ); |
| public: |
| Box( Context const* context, char const* id ); |
| void Add( Window *pWindow, bool bExpand, bool bFill, sal_Int32 nPadding); |
| void Add( Container *pContainer, bool bExpand, bool bFill, sal_Int32 nPadding); |
| |
| private: |
| void setProps( css::uno::Reference< css::awt::XLayoutConstrains > xChild, |
| bool bXExpand, bool bYExpand, sal_Int32 nPadding ); |
| }; |
| |
| class TOOLKIT_DLLPUBLIC HBox : public Box |
| { |
| public: |
| HBox( Context const* context, char const* id ); |
| HBox( sal_Int32 nBorder, bool bHomogeneous ); |
| }; |
| class TOOLKIT_DLLPUBLIC VBox : public Box |
| { |
| public: |
| VBox( Context const* context, char const* id ); |
| VBox( sal_Int32 nBorder, bool bHomogeneous ); |
| }; |
| |
| class PluginImpl; |
| class TOOLKIT_DLLPUBLIC Plugin : public Control |
| { |
| DECL_GET_IMPL( Plugin ); |
| //DECL_CONSTRUCTORS( Plugin, Control, 0 ); |
| public: |
| ::Control *mpPlugin; |
| Plugin( Context *context, char const* id, ::Control *plugin ); |
| }; |
| |
| class LocalizedStringImpl; |
| class TOOLKIT_DLLPUBLIC LocalizedString : public Window |
| { |
| DECL_GET_IMPL( LocalizedString ); |
| |
| public: |
| LocalizedString( Context *context, char const* id ); |
| |
| rtl::OUString operator= (rtl::OUString const&); |
| rtl::OUString operator+= (sal_Unicode ); |
| rtl::OUString operator+= (rtl::OUString const&); |
| |
| operator rtl::OUString (); |
| operator rtl::OUString const& (); |
| operator String(); |
| String getString (); |
| rtl::OUString getOUString (); |
| String GetToken (sal_uInt16 i, sal_Char c); |
| }; |
| |
| class InPlugImpl; |
| class TOOLKIT_DLLPUBLIC InPlug : public Context, public Window |
| { |
| DECL_GET_IMPL (InPlug); |
| |
| public: |
| InPlug ( Window *parent, char const* xml_file, char const* id, sal_uInt32 nId=0); |
| InPlug ( ::Window *parent, char const* xml_file, char const* id, sal_uInt32 nId=0); |
| |
| void ParentSet (Window *window); |
| }; |
| |
| } // end namespace layout |
| |
| #if ENABLE_LAYOUT |
| #define LAYOUT_NS layout:: |
| #define LAYOUT_DIALOG_PARENT\ |
| VCLXWindow::GetImplementation( uno::Reference <awt::XWindow> ( GetPeer(), uno::UNO_QUERY ) )->GetWindow() |
| #define LAYOUT_THIS_WINDOW( this ) this->GetWindow () |
| #else /* !ENABLE_LAYOUT */ |
| #define LAYOUT_NS |
| #define LAYOUT_DIALOG_PARENT this |
| #define LAYOUT_THIS_WINDOW( this ) this |
| #endif /* !ENABLE_LAYOUT */ |
| |
| #endif /* _LAYOUT_HXX */ |