SYSidentifyCoordinate

Top  Previous  Next

Digitize of a point from the data bank or the construction buffer.

With this routine a point is questioned with the user and then the nächstliegende value from the data bank, i.e. from the amount of the selected objects and the points of the construction buffer, is returned. When result become the co-ordinates, as well as the Punkthandle ascertained.

Parametre

x (stands in *) [OUT]

y (stands in *) [OUT]

The position of the identified point if as a functional value is delivered by SYSidentifyCoordinate SYS_COORD_VALID_IDENTIFY. Will hand over x or y as a zero pointer, then the position is not stored away.

point (T_PPOINT *) [OUT]

In these variables the trading of the identified point is stored. If for this parametre a zero pointer hands over, does not become the trading zurückgeliefert.

flags (long int) [IN]

If the behaviour of the function and the other parametres steers. The parametre can be every combination of the in the following described Flags or 0. The following Flags are evaluated:

SYS_COORD_MARK_IDENTIFIED

The identified point is marked with a marker. The marker is taken from the initialization segment if there no marker is given, the marker 1 is used. With SYS_COORD_MARKER this value can be headlined.

SYS_COORD_NO_MESSAGE_TEXT

No announcement is given before the query of the co-ordinates.

SYS_COORD_HIGHLIGHT_POINT

The identified point becomes by Highlighting with the step Identify marked.

SYS_COORD_HIGHLIGHT_ELEMENT

The identified element becomes by Highlighting with the step Identify marked.

SYS_COORD_RETURN_TEXT

The last text given by the user is returned in the handed over text buffer. The buffer should have a least length of 20 signs, because, otherwise, if necessary the given co-ordinates are mutilated.

SYS_COORD_IDENTIFY_FLAGS_P

While identifying with the key P the given signs are used instead of the identification about all elements and bases.

SYS_COORD_IDENTIFY_FLAGS_L

While identifying with the key L the given signs are used instead of the identification about string elements and bases.

SYS_COORD_IDENTIFY_FLAGS_R

While identifying with the key R the given signs are used instead of the identification about symbols and bases.

SYS_COORD_IDENTIFY_FLAGS_C

While identifying with the key C the given signs are used instead of the identification about texts and bases.

SYS_COORD_MSGTEXT

Instead of the built-in announcement the provided announcement is used if the user should be requested to a co-ordinate input.

SYS_COORD_NO_USE_CONSTRUCTION_BUFFER

The search for identifiable points remains limited on the selection amount. Normally the construction buffer is also searched.

SYS_COORD_MARKER

It should be used instead of the marker given in the initialization with this routine provided ones. However, this is only indicated, even if SYS_COORD_MARK_IDENTIFIED is given.

text (char *) [OUT, optionally]

If in flags SYS_COORD_RETURN_TEXT was given, is expected with text a buffer which is used to the memory of the given text string. This is also valid for co-ordinates. If for identifying several string are requested, it is filed last here. The length of the buffer becomes in textlen given.

textlen (int) [OUT, optionally]

If in flags SYS_COORD_RETURN_TEXT was given, then is expected in textlen the length of the text buffer. This length should be long at least 20 signs, so that an entire co-ordinate can be read in.

identifyFlagsP (int) [IN, optionally]

Becomes in flags the parametre SYS_COORD_IDENTIFY_FLAGS_P sedate, so this value is used for identifying of a point if the co-ordinate with the key P was digitized. If this Flag is not put, is preset for the key P, so that all elements are searched for the base procedure.

identifyFlagsL (int) [IN, optionally]

Becomes in flags the parametre SYS_COORD_IDENTIFY_FLAGS_L sedate, so this value is used for identifying of a point if the co-ordinate with the key L was digitized. If this Flag is not put, is preset for the key L, so that only string elements are searched for the base procedure.

identifyFlagsR (int) [IN, optionally]

Becomes in flags the parametre SYS_COORD_IDENTIFY_FLAGS_R sedate, so this value is used for identifying of a point if the co-ordinate with the key R was digitized. If this Flag is not put, is preset for the key R, so that only symbolic elements are searched for the base procedure.

identifyFlagsC (int) [IN, optionally]

Becomes in flags the parametre SYS_COORD_IDENTIFY_FLAGS_C sedate, so this value is used for identifying of a point if the co-ordinate with the key C was digitized. If this Flag is not put, C is preset for the key, so that only text elements are searched for the base procedure.

msgText (char *) [IN, optionally]

Becomes in flags the parametre SYS_COORD_MSGTEXT sedate, so this text is given before identifying.

marker (int) [IN, optionally]

Becomes in flags the parametre SYS_COORD_MARKER sedate, so this marker is used instead of the standard marker for marking of the identified point. In addition, the Flag SYS_COORD_MARK_IDENTIFIED must be put. The standard marker is determined by the initialization variable IdentifyMarker.

Result

(int) [OUT]

0 It no point was found because either CON was operated or was given instead of a co-ordinate a text.

1 (SYS_COORD_VALID_IDENTIFY) It a point was digitized. The co-ordinates stand in (x, y), the trading in point.

Constants

#define SYS_COORD_VALID_IDENTIFY 1

#define SYS_COORD_MARK_IDENTIFIED 0x00000001

#define SYS_COORD_NO_MESSAGE_TEXT 0x00000002

#define SYS_COORD_HIGHLIGHT_POINT 0x00000004

#define SYS_COORD_HIGHLIGHT_ELEMENT 0x00000008

#define SYS_COORD_RETURN_TEXT 0x00000010

#define SYS_COORD_IDENTIFY_FLAGS_P 0x00000020

#define SYS_COORD_IDENTIFY_FLAGS_L 0x00000040

#define SYS_COORD_IDENTIFY_FLAGS_R 0x00000080

#define SYS_COORD_IDENTIFY_FLAGS_C 0x00000100

#define SYS_COORD_MSGTEXT 0x00000200

#define SYS_COORD_NO_USE_CONSTRUCTION_BUFFER 0x00000400

#define SYS_COORD_MARKER 0x00008000

 

Declaration

#include "system.h"

 

int DLLENTRY SYSidentifyCoordinate (

stand in * x,

stand in * y,

T_PPOINT * point,

long int flags,

...

);