SetBProp Method

[Top]  [Chapter]  [Previous]  [Next]

This method reads and writes internal property flags.

Declaration

int SetBProp([In] BPropSel Group, [In] int ID, [In] int Value);

Description

This method reads and writes a multitue of internal property flags. The First parameter selects the group of falgs, the second the flag and the third the new value. If the third paranmeter is -1 the flag will be cleared, if it is 1 it will be set, if it is 0 only the current state (1 or 0) will be returned.

 

Within .NET projects you can use the enum BPropSel to select the group, for example Memo.SetBProp(BPropSel.wpVarBOptions,1,1) to enable the "word wrap" mode.

 

This groups and flag ids exist:

 

Group 0 : wpVarBOptions

 

0: Inserting mode on / off

1: WordWrap mode on / off

2: SinglePageMode mode on / off

3: CaretDisabled on / off (default: off)

4: Draw table Grid on / off

5: ShowPagenumber on / off

6: reserved

7: OneClickHyperlink on / off

8: 3D frame on / off

9: Enabled on / off

10: Readonly on / off

11: AcceptFiles on / off

12: Modified yes / no

13: WantReturns yes / no

14: WantTabs yes / no

15: Internally lock the styles against Clear() yes/no

16: The ruler use inch instead of cm yes/no

17: The editor fields on the dialogs use inch instead of cm yes/no

 

Group 1 : wpEditOptions

 

0: wpTableResizing

1: wpTableOneCellResizing always only one cell like ssCtrl in

Shift

2: wpTableColumnResizing // change column width

3: wpTableRowResizing // Change height of row

4: wpClearAttrOnStyleChange //ON: clear the redundant properties when the style name is changed.

5: wpNoAutoWordSelection // don't select complete words (like Word)

6: wpObjectMoving // move images (ObjType=wpobjImage)

7: wpObjectResizingWidth // the width of objects can be changed

8: wpObjectResizingHeight // the height of objects can be changed

9: wpObjectResizingKeepRatio // the width/height of objects can be changed

10: wpObjectSelecting // objects can be selected

11: wpObjectDeletion // objects can be deleted (only used for TWPObject)

12: wpNoAutoScroll // Switch off the new Auto Scroll Feature

13: wpSpreadsheetCursorMovement Cursor up/down in Rows

14: wpAutoInsertRow 0 : wpAutoInsertRow TAB in last cell. Must be combined with0 : wpSpreadsheetCursorMovement

15: wpNoEditOutsideTable to simulate spreadsheet

16: wpBreakTableOnReturnInRow V5: instead of inserting a row break up the table

17: wpActivateUndo activate UNDO

18: wpActivateUndoHotkey

activate ALT + Backspace - requires0 : wpAllowUndo set too

19: wpActivateRedo makes backup of complete text !

20: wpActivateRedoHotkey makes backup of complete text !

21: wpAlwaysInsert don't switch to overwrite

22: wpMoveCPOnPageUpDown Move Cursor on Page up or Down code - V5 ok

23: wpAutoDetectHyperlinks // Create a hyperlink after 'www.' was typed

24: wpNoHorzScrolling

25: wpNoVertScrolling

26: wpDontSelectCompleteField

27: wpStreamUndoOperation // saves also additional info like bands objects ..

28: wpTabToEditFields // used with ProtecteProp: ppAllExceptForEditFields

29: wpSelectPageOnDblClick

30: wpAllowCreateTableInTable // -the create table button allows nested tables

 

Group 2 : wpEditOptionsEx

 

0: wpDisableSelection // The user cannot select text (see ViewOptions to hide selection)

1: wpDisableCaret // The caret (insertion point marker at cursor position) is not displayed

2: wpDisableGetFocus // The editor will never receive the focus

3: wpDisableEditOfNonBodyDataBlocks // in Pagelayout mode other DataBlocks (header footer) cannot be selected for edtiting with a click of the mouse

4: wpAllowCursorInRow // the cursor can be placed in row end marker to create a new row with return

5: wpTextObjectMoving // move text objects (ObjType=wpobjTextObj)

6: wpTextObjectSelecting // By defualt allow selectiong of text objects

7: wpNoAutoWordStartEndFieldSelection // Normally a complete field is selected when the cursor is moved over the start or end of a mail merge field. unless wpNoAutoWordSelection is used.

8: wpDisableAutoCharsetSelection // If true the charset is not retrieved by checking the current keyboard layout when the user types

9: wpIgnoreSingleCellSelection // No cell selection by pointing in bottom left corner

10: wpTABMovesToNextEditField // used with forms

11: wpDblClickCreateHeaderFooter // Double click in Margin creates header/footer for all pages. Use 'OnClickCreateHeaderFooter' event to modify 'range'

12: wpRepaintOnFieldMove // When the cursor moves to a different field the form is repainted. This is important if you use code to highlight the current field. (using event: OnGetAttributeColor)

13: wpKeepCellsWhenCombiningCells // use the HTML way to combine cells horizontally

14: wpAllowSplitOfCombinedCellsOnly // use the HTML way to split cells dont allow split if not combined

15: wpDontClearStylesInNew // If defined Action 'New' will not clear the defined styles

16: wpDontResetPagesizeInNew // If defined clearing the text will not set up the default page size

17: wpSetDefaultAttrInNew // If defined "New" will preset the writing attributes to the default

18: wpAllowDrawDropBetweenTextBlocks

19: wpDisableFastInitOnTyping // Disable the improved typing performance in large paragraphs

20: wpDontTriggerPopupInContextEvent // Changes the time the event OnMouseDownWord is triggered (old behaviour)

21: wpAlwaysColWidthPC // Column Width always in %

22: wpDisableXPosLineUpDown - When using cursor up/down stay in same char pos, not x pos

23: wpDontInitSelTextAttrWithDefaultFont - Display empty font / size selector when current attributes are default attributes

24: wpDontSelectCellOnSpreadsheetMovement - Do not select next cell when using TAB in a table

25: wpScrollLineWise when suing scroll bar up/down button scroll line wise

26: wpZoomWithMouseWheel - zoom in and out when pressing CTRL while using mouse wheel

27: wpTableRowResizingWithCTRL - allow table row resizing only when also CTRL is pressed (overrides wpTableRowResizing in group 1).

 

Group 3 : wpProtectProp

 

0: ppParProtected // the complete paragraph cannot be deleted --> WPAT_ParProtected

1: ppCheckAllText // Trigger event for the complete text

2: ppAllExceptForEditFields // Only allow editing in edit fields. Cursor jumps between edit fields

3: ppNoNewParagraphsInEditFields // Do not allow par insertion/deletion in EditFields

4: ppProtected // Text with the style afsProtected cannot be overridden

5: ppHidden // Text which uses the style 'hidden'

6: ppIsInsertpoint // Protect the field start or end markers (wpobjMergeField)

7: ppIsMergedText // used to be 'ppAutomatic' The oposite of : ppAllExceptForEditFields

8: ppIsBookmark // Protect the bookmark start or end markers (wpobjBookmark)

9: ppIsTextObject // Protect the fields (such as PAGE numbers) (wpobjTextObj)

10: ppIsImageObject // Protected the images (wpobjImage)

11: ppProtectionTextObjects // used with TWPTextObj.Mode 'wpobjWithinProtected'

12: ppIsInvisible

13: ppAllowEditAtTextEnd // Allow typing at text end

14: ppProtectSelectedTextToo

15: ppDontProtectAttributes // V5.15 - if defined it is possible to change the attributes of protected text

16: ppDontUseAttrOfProtected // do not use the charattr if the text is protected

17: ppNoEditAfterProtection // Do not allow editing at the end of the paragraph if the last char is protected

18: ppInsertBetweenProtectedPar // Allow the insertion between protected paragraphs 19: ppIsTextObjectCustom - similar to ppIsTextObject which it overrides - but do not protected page and date objects. This is useful to protect custom objects and HTMLCODE fields.

20: ppBookmarkKeepStructure - Used with ppIsBookmark. When text is deleted which contains bookmarks the bookmark objects are recreated to preserve the logical structure of the document.

21: ppInsertpointKeepStructure - Used with ppIsInsertpoint - reserve the merge fields.

 

Group 4 : wpClickableCodes

 

0: wpobjCustom // can be anything - use 'is' operator

// This objects are usually used pairwise

1: wpobjMergeField // Name=fieldname Source=Command A field (used to be Insertpoint - now always use Start/End !

2: wpobjHyperlink // Name=Title Source = HREF StyleName=class

3: wpobjBookmark // Name=bookmarkname Source = Title StyleName=class

4: wpobjTextProtection // Text cannot be edited within

5: wpobjSPANStyle // Special texts styles StyleName=class (=parstyle = name) Source=style as read from file

6: wpobjCode // Custom Codes

// This objects are usually used sigular

7: wpobjTextObject // A text object field (one char text such as PAGE) Source=FieldMask IParam= min length in chars

8: wpobjReference // A text object field (Name=Bookmark Source=Default Text) CParam = -1 or the page number last used

9: wpobjPageSize // - not used. We use the sections to define page sizes

10: wpobjPageProps // - not used. We use the sections to define page sizes

11: wpobjFootnote

12: wpobjImage // a TWPObject for HTML images the 'name=ALT tag Source = file' StyleName=class

13: wpobjHorizontalLine

 

Group 5 : wpWriteObjectMode

 

0: wobDontSaveImages // Images are not saved

1: wobRTF - best mode to save images (default)

2: wobRTFNoBinary - do not save as binary (use hex code)

3: wobStandard - use proprietary format

4: wobStandardNoBinary

5: wobStandardAndRTF

 

Group 6 : wpViewOptions

 

0: wpShowGridlines - show the grid lines for tables

1: wpDisableHotStyles - do not use any fly over effects for links

2: wpShowCR - display P symbol

3: wpShowFF - display symbol for hard page breaks

4: wpShowNL - display symbol for line breaks Char(10)

5: wpShowSPC - display dots for spaces

6: wpShowHardSPC - display dots for hard spaces Char(160)

7: wpShowTAB - display arrows for tabstops

8: wpShowParCalcNames // Display the names assigned using property WPAT_PAR_NAME

9: wpShowParCalcCommands // Display the formulas

10: wpShowParNames // Display the names assigned using property TParagraph.Name

11: wpNoEndOfDocumentLine // If enabled a line will be displayed in normal mode at the bottom. (Ignore the "no")

12: wpHideSelection // Selection possible but not displayed

13: wpHideSelectionNonFocussed // selection not displayed when not focussed

14: wpHideSelectionNonFocussedAndInactive // Selection not displayed if not active (not connected to toolbar)

15: wpTraditionalMisspellMarkers // Draw "Word like" curly underlines (default)

16: wpDisableMisspellMarkers // Do not draw curly underlines

17: wpShowPageNRinGap

18: wpDrawFineUnderlines

19: wpDontGrayHeaderFooterInLayout

20: wpInfiniteTextArea

21: wpDontPaintPageFrame // Do not draw the rectangle around page

22: wpCenterPaintPages

23: wpUseOwnDoubleBuffer // Usually a shared double buffer is used // - unless thumbnailmode has been activated or this flag is active

24: wpDrawPageMarginLines

25: wpDontDrawSectionMarker

26: wpDrawHeaderFooterLines

27: wpDontDisplayScrollPageHint

28: wpDontDrawObjectAnchors

29: wpShowCRButNotInCells

 

Group 7 : wpViewOptionsEx

 

reserved for future

 

Group 8 : wpFormatOptions

 

0: wpDisableAutosizeTables // - we suggest to enable this flag. Otherwise tables importaed form RTF can look wrong

1: wpNoMinimumCellPadding // Do not add a one pixel padding to all cells

2: wpfDontBreakTables // do not break tables at all. Also see : wpKeepTogetherAdjacentTables in FormatOptionsEx

3: wpfDontBreakTableRows // do not break table rows

4: wpDontClipCells // do not clip cells if absolute row heights are used

5: wpfIgnoreMinimumRowheight // Do not use the row height property

6: wpfIgnoreMaximumRowheight // Do not use the row maximum height property

7: wpTableRowIndicator // must be combined with EditOptionsEx : AllowCursorInRow

8: wpfIgnoreKeep // The WPAT_ParKeep property is ignored (do not break par)

9: wpfIgnoreKeepN // The WPAT_ParKeepN property is ignored (do not break adjacent par)

10: wpfKeepOutlineWithNext // Text which uses the WPAT_ParIsOutline property is kept with the next text

11: wpfAvoidWidows // Avoid single lines on old page

12: wpfAvoidOrphans // Avoid single lines on new page

13: wpfCenterOnPageVert // Center text on all pages

14: wpfHangingIndentWithTab // V5: first tab in paragraph jumps to indent first (this always happens if no tabs are set!) // the left indent will be handled as first tabstop not only if the tab is the // first character but also if the text before the tab fits into the first indent. (="Word" like)

15: wpfDontTabToIndentFirst // The oposite to : aFormatOption([wpfHangingIndentWithTab

16: wpJustifySoftLinebreaks // Justify \n

17: wpJustifyHardLinebreaks // Justify \r

18: wpUseHyphenation // Use soft hyphens in the text (inserted with Ctrl + '-')

19: wpFooterMinimumDistanceToText // The footer texts start after the body text (WPTools 4 and <5.14 did it so)

20: wpShowBookmarkCodes // display bookmark tags

21: wpShowHyperlinkCodes // display hyperlinks tags

22: wpShowSPANCodes // display SPAN tags

23: wpShowInvisibleText // show text which would be otherwise hidden

Experimental flags:

24: wpfHideEmptyParElements // reserved: Can be used when editing HTML files with nested DIV elements

25: wpfXMLOutlineMode // Debugging mode: Show paragraph tree similar XML in IE

26: wpWriteRightToLeft // activate RTL writing

27: wpAutoWriteRightToLeft // reserved

Troubleshooting flags

28: wpUseAbsoluteFontHeight // Calculate the height of the text using the font size alone

29: wpfAlwaysFormatWithScreenRes // .. even if RM600 is defined in WPCtrMemo

30: wpDisableSpeedReformat // format only the current page and the next page on regular input

31: wpDontAdjustFloatingImagePosition // do not adjust image position to keep it on the page

 

Group 9 : wpFormatOptionsEx

 

0: wpDontAddExternalFontLeading // When measuring the font height don't add the // value defined for a font: Metrics.tmExternalLeading. This improves compatibility to WPTools 4 // Alternatively set global variable WPDoNotAddExternalFontLeading := TRUE to // activate this mode for all editors!

1: wpfKeepTablesInTextArea // If defined avoid that table go into right margin

2: wpKeepTogetherAlwaysNewPage // if : wpfDontBreakTables is used a table which is too large will also create a new page

3: wpKeepTogetherAdjacentTables // When tables are not separated by paragraphs they are kept together as well

4: wpDontUseTablePadding // Do not read the padding of cells from table

5: wpfIgnoreVertAlignment // Switches off the vertical alignment

6: wpfKeepNUsesParImages // When using KeepN paragraph aligned images will be kept on same page as their anchor paragraph.

7: wpDontIgnoreSpacebeforeOnTopOfPage // switch "Word" mode off

8: wpfDontHideParAboveNestedTable

9: wpDontUseRowPadding // Do not read the padding of cells from table row

10: wpDontUseBorderPadding // Do not use the border width to calculate padding

11: wpDontInheritCellAttr // Dont inherit cell attributes from table row and table

12: wpDontUseSPANStyles // Do not use the stalyes of hyperlink and SPAN objects . Speeds up reformat a lot!

13: wpfDisableJustifiedText

14: wpAlwaysContinueBorderAfterCR // Paragraph.SplitAt (= ENTER key in editor) will also copy border attributes to // the new paragraph if the split position is at the end

15: wpNoDefaultParStyles // Disable default paragraph style handling (So you can handle // it yoursel in the OnInitializePar event)!

16: wpfAutoRestartSimpleNumbering // Reset a numbering level after a line which was not numbered.

17: wpfSimpleNumberingPriorityOverOutlines // this only affects numbering which does not use outlines

18: wpfNoAutoDecTabInTable // Do not automatically align to only decimal tabstop in table cells

19: wpfNoTableHeaderRows // Ignore table header

20: wpfNoTableFooterRows // Ignore table footer // Experimental Flags

21: wpAllow_WPAT_NoWrap // If active don't wrap par marked with WPAT_NoWrap

22: wpfMixRTLText // If a paragraph which uses the paprRightToLeft attribute the // western text is not reordered

23: wpfStoreWPObjectsInRTFDataProps // unless this flag is used the TWPObjects will // be stored in the TWPRTFDataCollection and not in the TWPRTFDataProps // Activate User CharStyle

24: wpCharEffectIsUserAttribute // Currently the character attribute WPAT_CharEffect is not used. // It can be used to store custom information. If the flag wpCharEffectIsUserAttribute is used // the RTF engine will ignore this property.

25: wpfIgnoreTrailingEmptyParAtFooter // Empty paragraphs are ignored at´the footer end

25: wpfDontCombineDifferentStylePars // Empty paragraphs are ignored at´the footer end

26: wpfNestedNumberingInTableCells // Empty paragraphs are ignored at´the footer end

 

Group 10 : wpAcceptFilesOptions

 

0: wpDropCreatesLinkedImage // Only the pathname of the image will be stored

1: wpDropCreatesMovableParObject // The image will be positioned relatively to paragraph

2: wpDropCreatesMovablePageObject // -or- The image will be positioned relatively to page

3: wpDropCreatesNoWrapImage

 

Group 11 : wpPrintOptions

 

0: wpDoNotChangePrinterDefaults

1: wpIgnoreBorders

2: wpIgnoreShading

3: wpIgnoreText

4: wpIgnoreGraphics

5: wpUsePrintPageNumber

6: wpDontPrintWatermark

7: wpDontReadPapernamesFromPrinter

8: wpAlwaysHideFieldmarkers //hide field markers in PrintDialog

9: wpDontAllowSelectionPrinting

 

Group 12 : wpClipboardOptions

 

0: wpcoNoInternalDragAndDrop //Switch off the internal drag&drop

1: wpcoNoDragAndDropFromOutside // Allow only Drop from within

2: wpcoAlwaysDeleteInDragSource // Delete dragged source text if from different editor too!

3: wpcoDontMoveCursorDuringDrag // Do not show cursor when dragging

4: wpcoNoAutoSelSpaceExtension // Don't select preceding or trailing spaces when doing Drag&Drop

5: wpDontHideCaret // do not hide the caret while selection is active

6: wpcoDontPasteWPT

7: wpcoDontPasteRTF

8: wpcoDontPasteANSI

9: wpcoDontPasteUNICODE

10: wpcoPasteHTMLWhenAvailable

11: wpcoDontPasteGraphics

12: wpcoDontCopyRTF

13: wpcoDontCopyANSI

14: wpcoDontCopyUNICODE

15: wpcoDontCopyWPTOOLS

16: wpcoPreserveBorders

17: wpcoPreserveShading

18: wpcoPreserveIndents

19: wpcoDontAutoAppendSpace

20: wpcoPasteAsNestedTable // cells are always pasted as nested in table

21: wpcoDontPasteFonts

22: wpcoDontPasteFontSizes

23: wpcoDoNotUseInsertMode // Any paste operation will completely replace the document!

24: wpcoDontCopyProtectedText

25: wpcoDontCopyProtectedText

26: wpcoAlwaysCopyImagesEmbedded

27: wpcoAlsoCopyHTML

 

 

Group 13 : Security Options. This flags allow it to avoid that the user copy or saves text from this editor.

1 : DontUseGlobalSettings - this editor should not use the global settings (group 14).

2 : Do not allow any paste operation

3 : Do not allwo any copy operation

4 : Do only allow copy and paste within the application, paste in other application is not possible. (The clipboard contents is encrypted with a dynamic password)

5 : Save dialogs and buttons are disabled.

6 : Load dialogs and buttons are disabled.

7 : Print dialogs and buttons are disabled.

100: Set flag 4, 5 and 6 and disable any subsequent change to this property.

 

Group 14 : Global Security Options. This flags allow it to avoid that the user copy or saves text from all TextDynamic editors.

1 : not used

2 : Do not allow any paste operation

3 : Do not allwo any copy operation

4 : Do only allow copy and paste within the application, paste in other application is not possible. (The clipboard contents is encrypted with a dynamic password)

5 : Save dialogs and buttons are disabled.

6 : Load dialogs and buttons are disabled.

7 : Print dialogs and buttons are disabled.

100: Set flag 4, 5 and 6 and disable any subsequent change to this property.

You can also use Command(WPDLL_COM_PROTECTEDTEXT=9119) to apply the global flags:

WPDLLInt1.Command(9119,100,0)

.


[idh_iwpmemo_setbprop.htm]    Copyright © 2007 by WPCubed GmbH