summaryrefslogtreecommitdiff
path: root/vcl/inc
diff options
context:
space:
mode:
authorVladimir Glazounov <vg@openoffice.org>2007-04-11 17:12:40 +0000
committerVladimir Glazounov <vg@openoffice.org>2007-04-11 17:12:40 +0000
commit5b931ba705e6d5b54c143898a4cd842caf353a28 (patch)
treec184aae7425cd5846dfad0686aec31c2e93de915 /vcl/inc
parent0ac71f9f9b89b94513b7eec50d81991c8940016b (diff)
INTEGRATION: CWS hedaburemove01 (1.1.2); FILE ADDED
2007/02/09 16:11:13 vg 1.1.2.1: #72503# get rid of hedabu procedure: Moving headers to vcl/inc/vcl and correspondent necessary changes
Diffstat (limited to 'vcl/inc')
-rw-r--r--vcl/inc/vcl/status.hxx237
-rw-r--r--vcl/inc/vcl/stdtext.hxx68
-rw-r--r--vcl/inc/vcl/sv.h43
3 files changed, 348 insertions, 0 deletions
diff --git a/vcl/inc/vcl/status.hxx b/vcl/inc/vcl/status.hxx
new file mode 100644
index 000000000000..8142282f6ec0
--- /dev/null
+++ b/vcl/inc/vcl/status.hxx
@@ -0,0 +1,237 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: status.hxx,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: vg $ $Date: 2007-04-11 18:12:20 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 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
+ *
+ ************************************************************************/
+
+#ifndef _SV_STATUS_HXX
+#define _SV_STATUS_HXX
+
+#ifndef _SV_SV_H
+#include <vcl/sv.h>
+#endif
+#ifndef _VCL_DLLAPI_H
+#include <vcl/dllapi.h>
+#endif
+#ifndef _SV_WINDOW_HXX
+#include <vcl/window.hxx>
+#endif
+
+class ImplStatusItemList;
+
+// --------------------
+// - Progress-Ausgabe -
+// --------------------
+
+void VCL_DLLPUBLIC DrawProgress( Window* pWindow, const Point& rPos,
+ long nOffset, long nPrgsWidth, long nPrgsHeight,
+ USHORT nPercent1, USHORT nPercent2, USHORT nPercentCount );
+
+// ---------------------
+// - StatusBarItemBits -
+// ---------------------
+
+typedef USHORT StatusBarItemBits;
+
+// ----------------------------
+// - Bits fuer StatusBarItems -
+// ----------------------------
+
+#define SIB_LEFT ((StatusBarItemBits)0x0001)
+#define SIB_CENTER ((StatusBarItemBits)0x0002)
+#define SIB_RIGHT ((StatusBarItemBits)0x0004)
+#define SIB_IN ((StatusBarItemBits)0x0008)
+#define SIB_OUT ((StatusBarItemBits)0x0010)
+#define SIB_FLAT ((StatusBarItemBits)0x0020)
+#define SIB_AUTOSIZE ((StatusBarItemBits)0x0040)
+#define SIB_USERDRAW ((StatusBarItemBits)0x0080)
+
+// -------------------
+// - StatusBar-Types -
+// -------------------
+
+#define STATUSBAR_APPEND ((USHORT)0xFFFF)
+#define STATUSBAR_ITEM_NOTFOUND ((USHORT)0xFFFF)
+#define STATUSBAR_OFFSET ((long)5)
+
+// -------------
+// - StatusBar -
+// -------------
+
+class VCL_DLLPUBLIC StatusBar : public Window
+{
+ class ImplData;
+private:
+ ImplStatusItemList* mpItemList;
+ ImplData* mpImplData;
+ XubString maPrgsTxt;
+ Point maPrgsTxtPos;
+ Rectangle maPrgsFrameRect;
+ long mnPrgsSize;
+ long mnItemsWidth;
+ long mnDX;
+ long mnDY;
+ long mnCalcHeight;
+ long mnTextY;
+ long mnItemY;
+ USHORT mnCurItemId;
+ USHORT mnPercent;
+ USHORT mnPercentCount;
+ BOOL mbVisibleItems;
+ BOOL mbFormat;
+ BOOL mbProgressMode;
+ BOOL mbInUserDraw;
+ BOOL mbBottomBorder;
+ Link maClickHdl;
+ Link maDoubleClickHdl;
+
+ using Window::ImplInit;
+ SAL_DLLPRIVATE void ImplInit( Window* pParent, WinBits nStyle );
+ SAL_DLLPRIVATE void ImplInitSettings( BOOL bFont, BOOL bForeground, BOOL bBackground );
+ SAL_DLLPRIVATE void ImplFormat();
+ SAL_DLLPRIVATE BOOL ImplIsItemUpdate();
+// #if 0 // _SOLAR__PRIVATE
+ using OutputDevice::ImplDrawText;
+// #endif
+ SAL_DLLPRIVATE void ImplDrawText( BOOL bOffScreen, long nOldTextWidth );
+ SAL_DLLPRIVATE void ImplDrawItem( BOOL bOffScreen, USHORT nPos, BOOL bDrawText, BOOL bDrawFrame );
+ SAL_DLLPRIVATE void ImplDrawProgress( BOOL bPaint,
+ USHORT nOldPerc, USHORT nNewPerc );
+ SAL_DLLPRIVATE void ImplCalcProgressRect();
+ SAL_DLLPRIVATE Rectangle ImplGetItemRectPos( USHORT nPos ) const;
+ SAL_DLLPRIVATE void ImplCalcBorder();
+
+public:
+ StatusBar( Window* pParent,
+ WinBits nWinStyle = WB_BORDER | WB_RIGHT );
+ StatusBar( Window* pParent, const ResId& rResId );
+ ~StatusBar();
+
+ virtual void MouseButtonDown( const MouseEvent& rMEvt );
+ virtual void Paint( const Rectangle& rRect );
+ virtual void Move();
+ virtual void Resize();
+ virtual void RequestHelp( const HelpEvent& rHEvt );
+ virtual void StateChanged( StateChangedType nType );
+ virtual void DataChanged( const DataChangedEvent& rDCEvt );
+
+ virtual void Click();
+ virtual void DoubleClick();
+ virtual void UserDraw( const UserDrawEvent& rUDEvt );
+
+ void InsertItem( USHORT nItemId, ULONG nWidth,
+ StatusBarItemBits nBits = SIB_CENTER | SIB_IN,
+ long nOffset = STATUSBAR_OFFSET,
+ USHORT nPos = STATUSBAR_APPEND );
+ void RemoveItem( USHORT nItemId );
+
+ void ShowItem( USHORT nItemId );
+ void HideItem( USHORT nItemId );
+ BOOL IsItemVisible( USHORT nItemId ) const;
+
+ void ShowItems();
+ void HideItems();
+ BOOL AreItemsVisible() const { return mbVisibleItems; }
+
+ void CopyItems( const StatusBar& rStatusBar );
+ void Clear();
+
+ USHORT GetItemCount() const;
+ USHORT GetItemId( USHORT nPos ) const;
+ USHORT GetItemId( const Point& rPos ) const;
+ USHORT GetItemPos( USHORT nItemId ) const;
+ Rectangle GetItemRect( USHORT nItemId ) const;
+ Point GetItemTextPos( USHORT nItemId ) const;
+ USHORT GetCurItemId() const { return mnCurItemId; }
+
+ ULONG GetItemWidth( USHORT nItemId ) const;
+ StatusBarItemBits GetItemBits( USHORT nItemId ) const;
+ long GetItemOffset( USHORT nItemId ) const;
+
+ void SetItemText( USHORT nItemId, const XubString& rText );
+ const XubString& GetItemText( USHORT nItemId ) const;
+
+ void SetItemData( USHORT nItemId, void* pNewData );
+ void* GetItemData( USHORT nItemId ) const;
+
+ void SetItemCommand( USHORT nItemId, const XubString& rCommand );
+ const XubString& GetItemCommand( USHORT nItemId );
+
+ void SetHelpText( USHORT nItemId, const XubString& rText );
+ const XubString& GetHelpText( USHORT nItemId ) const;
+
+ using Window::SetQuickHelpText;
+ void SetQuickHelpText( USHORT nItemId, const XubString& rText );
+ using Window::GetQuickHelpText;
+ const XubString& GetQuickHelpText( USHORT nItemId ) const;
+
+ void SetHelpId( USHORT nItemId, ULONG nHelpId );
+ ULONG GetHelpId( USHORT nItemId ) const;
+
+ void SetBottomBorder( BOOL bBottomBorder = TRUE );
+ BOOL IsBottomBorder() const { return mbBottomBorder; }
+
+ void SetTopBorder( BOOL bTopBorder = TRUE );
+ BOOL IsTopBorder() const;
+
+ void StartProgressMode( const XubString& rText );
+ void SetProgressValue( USHORT nPercent );
+ void EndProgressMode();
+ BOOL IsProgressMode() const { return mbProgressMode; }
+ void ResetProgressMode();
+
+ void SetText( const XubString& rText );
+
+ void SetHelpText( const XubString& rText )
+ { Window::SetHelpText( rText ); }
+ const XubString& GetHelpText() const
+ { return Window::GetHelpText(); }
+
+ void SetHelpId( ULONG nId )
+ { Window::SetHelpId( nId ); }
+ ULONG GetHelpId() const
+ { return Window::GetHelpId(); }
+
+ Size CalcWindowSizePixel() const;
+
+ void SetClickHdl( const Link& rLink ) { maClickHdl = rLink; }
+ const Link& GetClickHdl() const { return maClickHdl; }
+ void SetDoubleClickHdl( const Link& rLink ) { maDoubleClickHdl = rLink; }
+ const Link& GetDoubleClickHdl() const { return maDoubleClickHdl; }
+
+ using Window::SetAccessibleName;
+ void SetAccessibleName( USHORT nItemId, const XubString& rName );
+ using Window::GetAccessibleName;
+ const XubString& GetAccessibleName( USHORT nItemId ) const;
+};
+
+#endif // _SV_STATUS_HXX
diff --git a/vcl/inc/vcl/stdtext.hxx b/vcl/inc/vcl/stdtext.hxx
new file mode 100644
index 000000000000..91fc1d384881
--- /dev/null
+++ b/vcl/inc/vcl/stdtext.hxx
@@ -0,0 +1,68 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: stdtext.hxx,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: vg $ $Date: 2007-04-11 18:12:30 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 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
+ *
+ ************************************************************************/
+
+#ifndef _VCL_STDTEXT_HXX
+#define _VCL_STDTEXT_HXX
+
+#ifndef _STRING_HXX
+#include <tools/string.hxx>
+#endif
+#ifndef _SV_SV_H
+#include <vcl/sv.h>
+#endif
+
+#ifndef _VCL_DLLAPI_H
+#include <vcl/dllapi.h>
+#endif
+
+class Window;
+
+// ------------------
+// - Standard-Texte -
+// ------------------
+
+#define STANDARD_TEXT_FIRST STANDARD_TEXT_SERVICE_NOT_AVAILABLE
+#define STANDARD_TEXT_SERVICE_NOT_AVAILABLE ((USHORT)0)
+#define STANDARD_TEXT_LAST STANDARD_TEXT_SERVICE_NOT_AVAILABLE
+
+XubString VCL_DLLPUBLIC GetStandardText( USHORT nStdText );
+
+// -------------------------------------
+// - Hilfsmethoden fuer Standard-Texte -
+// -------------------------------------
+
+void VCL_DLLPUBLIC ShowServiceNotAvailableError( Window* pParent, const XubString& rServiceName, BOOL bError );
+
+#endif // _VCL_STDTEXT_HXX
diff --git a/vcl/inc/vcl/sv.h b/vcl/inc/vcl/sv.h
new file mode 100644
index 000000000000..e22730c96d19
--- /dev/null
+++ b/vcl/inc/vcl/sv.h
@@ -0,0 +1,43 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: sv.h,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: vg $ $Date: 2007-04-11 18:12:40 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 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
+ *
+ ************************************************************************/
+
+#ifndef _SV_SV_H
+#define _SV_SV_H
+
+#ifndef _SOLAR_H
+#include <tools/solar.h>
+#endif
+
+#endif // _SV_SV_H