summaryrefslogtreecommitdiff
path: root/svtools/source/edit/textdat2.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'svtools/source/edit/textdat2.hxx')
-rw-r--r--svtools/source/edit/textdat2.hxx308
1 files changed, 0 insertions, 308 deletions
diff --git a/svtools/source/edit/textdat2.hxx b/svtools/source/edit/textdat2.hxx
deleted file mode 100644
index 6eae5d54fe..0000000000
--- a/svtools/source/edit/textdat2.hxx
+++ /dev/null
@@ -1,308 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org 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 version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-
-#ifndef _TEXTDAT2_HXX
-#define _TEXTDAT2_HXX
-
-#include <svl/svarray.hxx>
-#include <vcl/seleng.hxx>
-#include <vcl/virdev.hxx>
-#include <vcl/cursor.hxx>
-
-class TextNode;
-class TextView;
-
-#define PORTIONKIND_TEXT 0
-#define PORTIONKIND_TAB 1
-
-#define DELMODE_SIMPLE 0
-#define DELMODE_RESTOFWORD 1
-#define DELMODE_RESTOFCONTENT 2
-
-#define DEL_LEFT 1
-#define DEL_RIGHT 2
-#define TRAVEL_X_DONTKNOW 0xFFFF
-#define MAXCHARSINPARA 0x3FFF-CHARPOSGROW
-
-#define LINE_SEP 0x0A
-
-
-class TETextPortion
-{
-private:
- sal_uInt16 nLen;
- long nWidth;
- sal_uInt8 nKind;
- sal_uInt8 nRightToLeft;
-
- TETextPortion() { nLen = 0; nKind = PORTIONKIND_TEXT; nWidth = -1; nRightToLeft = 0;}
-
-public:
- TETextPortion( sal_uInt16 nL ) {
- nLen = nL;
- nKind = PORTIONKIND_TEXT;
- nWidth= -1;
- nRightToLeft = 0;
- }
-
- sal_uInt16 GetLen() const { return nLen; }
- sal_uInt16& GetLen() { return nLen; }
-
- long GetWidth()const { return nWidth; }
- long& GetWidth() { return nWidth; }
-
- sal_uInt8 GetKind() const { return nKind; }
- sal_uInt8& GetKind() { return nKind; }
-
- sal_uInt8 GetRightToLeft() const { return nRightToLeft; }
- sal_uInt8& GetRightToLeft() { return nRightToLeft; }
- sal_Bool IsRightToLeft() const { return (nRightToLeft&1); }
-
- sal_Bool HasValidSize() const { return nWidth != (-1); }
-};
-
-
-
-typedef TETextPortion* TextPortionPtr;
-SV_DECL_PTRARR( TextPortionArray, TextPortionPtr, 0, 8 )
-
-class TETextPortionList : public TextPortionArray
-{
-public:
- TETextPortionList();
- ~TETextPortionList();
-
- void Reset();
- sal_uInt16 FindPortion( sal_uInt16 nCharPos, sal_uInt16& rPortionStart, sal_Bool bPreferStartingPortion = sal_False );
- sal_uInt16 GetPortionStartIndex( sal_uInt16 nPortion );
- void DeleteFromPortion( sal_uInt16 nDelFrom );
-};
-
-struct TEWritingDirectionInfo
-{
- sal_uInt8 nType;
- sal_uInt16 nStartPos;
- sal_uInt16 nEndPos;
- TEWritingDirectionInfo( sal_uInt8 _Type, sal_uInt16 _Start, sal_uInt16 _End )
- {
- nType = _Type;
- nStartPos = _Start;
- nEndPos = _End;
- }
-};
-
-SV_DECL_VARARR( TEWritingDirectionInfos, TEWritingDirectionInfo, 0, 4 )
-
-class TextLine
-{
-private:
- sal_uInt16 mnStart;
- sal_uInt16 mnEnd;
- sal_uInt16 mnStartPortion;
- sal_uInt16 mnEndPortion;
-
- short mnStartX;
-
- sal_Bool mbInvalid; // fuer geschickte Formatierung/Ausgabe
-
-public:
- TextLine() {
- mnStart = mnEnd = 0;
- mnStartPortion = mnEndPortion = 0;
- mnStartX = 0;
- mbInvalid = sal_True;
- }
-
- sal_Bool IsIn( sal_uInt16 nIndex ) const
- { return ( (nIndex >= mnStart ) && ( nIndex < mnEnd ) ); }
-
- sal_Bool IsIn( sal_uInt16 nIndex, sal_Bool bInclEnd ) const
- { return ( ( nIndex >= mnStart ) && ( bInclEnd ? ( nIndex <= mnEnd ) : ( nIndex < mnEnd ) ) ); }
-
- void SetStart( sal_uInt16 n ) { mnStart = n; }
- sal_uInt16 GetStart() const { return mnStart; }
- sal_uInt16& GetStart() { return mnStart; }
-
- void SetEnd( sal_uInt16 n ) { mnEnd = n; }
- sal_uInt16 GetEnd() const { return mnEnd; }
- sal_uInt16& GetEnd() { return mnEnd; }
-
- void SetStartPortion( sal_uInt16 n ) { mnStartPortion = n; }
- sal_uInt16 GetStartPortion() const { return mnStartPortion; }
- sal_uInt16& GetStartPortion() { return mnStartPortion; }
-
- void SetEndPortion( sal_uInt16 n ) { mnEndPortion = n; }
- sal_uInt16 GetEndPortion() const { return mnEndPortion; }
- sal_uInt16& GetEndPortion() { return mnEndPortion; }
-
- sal_uInt16 GetLen() const { return mnEnd - mnStart; }
-
- sal_Bool IsInvalid() const { return mbInvalid; }
- sal_Bool IsValid() const { return !mbInvalid; }
- void SetInvalid() { mbInvalid = sal_True; }
- void SetValid() { mbInvalid = sal_False; }
-
- sal_Bool IsEmpty() const { return (mnEnd > mnStart) ? sal_False : sal_True; }
-
- short GetStartX() const { return mnStartX; }
- void SetStartX( short n ) { mnStartX = n; }
-
- inline sal_Bool operator == ( const TextLine& rLine ) const;
- inline sal_Bool operator != ( const TextLine& rLine ) const;
-};
-
-typedef TextLine* TextLinePtr;
- SV_DECL_PTRARR_DEL( TextLines, TextLinePtr, 1, 4 )
-
-inline sal_Bool TextLine::operator == ( const TextLine& rLine ) const
-{
- return ( ( mnStart == rLine.mnStart ) &&
- ( mnEnd == rLine.mnEnd ) &&
- ( mnStartPortion == rLine.mnStartPortion ) &&
- ( mnEndPortion == rLine.mnEndPortion ) );
-}
-
-inline sal_Bool TextLine::operator != ( const TextLine& rLine ) const
-{
- return !( *this == rLine );
-}
-
-
-
-class TEParaPortion
-{
-private:
- TextNode* mpNode;
-
- TextLines maLines;
- TETextPortionList maTextPortions;
- TEWritingDirectionInfos maWritingDirectionInfos;
-
-
- sal_uInt16 mnInvalidPosStart;
- short mnInvalidDiff;
-
- sal_Bool mbInvalid;
- sal_Bool mbSimple; // nur lineares Tippen
-
-
- TEParaPortion( const TEParaPortion& ) {;}
-
-public:
- TEParaPortion( TextNode* pNode );
- ~TEParaPortion();
-
-
- sal_Bool IsInvalid() const { return mbInvalid; }
- sal_Bool IsSimpleInvalid() const { return mbSimple; }
- void SetNotSimpleInvalid() { mbSimple = sal_False; }
- void SetValid() { mbInvalid = sal_False; mbSimple = sal_True;}
-
- void MarkInvalid( sal_uInt16 nStart, short nDiff);
- void MarkSelectionInvalid( sal_uInt16 nStart, sal_uInt16 nEnd );
-
- sal_uInt16 GetInvalidPosStart() const { return mnInvalidPosStart; }
- short GetInvalidDiff() const { return mnInvalidDiff; }
-
- TextNode* GetNode() const { return mpNode; }
- TextLines& GetLines() { return maLines; }
- TETextPortionList& GetTextPortions() { return maTextPortions; }
- TEWritingDirectionInfos& GetWritingDirectionInfos() { return maWritingDirectionInfos; }
-
-
- sal_uInt16 GetLineNumber( sal_uInt16 nIndex, sal_Bool bInclEnd );
- void CorrectValuesBehindLastFormattedLine( sal_uInt16 nLastFormattedLine );
-};
-
-
-class TEParaPortions : public ToolsList<TEParaPortion*>
-{
-public:
- TEParaPortions();
- ~TEParaPortions();
- void Reset();
-};
-
-
-class TextSelFunctionSet: public FunctionSet
-{
-private:
- TextView* mpView;
-
-public:
- TextSelFunctionSet( TextView* pView );
-
- virtual void BeginDrag();
-
- virtual void CreateAnchor();
-
- virtual sal_Bool SetCursorAtPoint( const Point& rPointPixel, sal_Bool bDontSelectAtCursor = sal_False );
-
- virtual sal_Bool IsSelectionAtPoint( const Point& rPointPixel );
- virtual void DeselectAll();
-
- virtual void DeselectAtPoint( const Point& );
- virtual void DestroyAnchor();
-};
-
-
-class IdleFormatter : public Timer
-{
-private:
- TextView* mpView;
- sal_uInt16 mnRestarts;
-
-public:
- IdleFormatter();
- ~IdleFormatter();
-
- void DoIdleFormat( TextView* pV, sal_uInt16 nMaxRestarts );
- void ForceTimeout();
- TextView* GetView() { return mpView; }
-};
-
-struct TextDDInfo
-{
- Cursor maCursor;
- TextPaM maDropPos;
-
- sal_Bool mbStarterOfDD;
- sal_Bool mbVisCursor;
-
- TextDDInfo()
- {
- maCursor.SetStyle( CURSOR_SHADOW );
- mbStarterOfDD = sal_False;
- mbVisCursor = sal_False;
- }
-};
-
-#endif // _TEXTDAT2_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */