Skip to Content
0
Former Member
Dec 08, 2008 at 10:06 AM

Creating text editor on a screen

667 Views

I am creating a text editor using the class CL_GUI_TEXTEDIT.Everything is coming fine but i want the text editor to open up a pop-up window. But here it is coming in the full screen editor.

This is my code.But i dnt know where to change in order to get the text-editor in a pop-up.

Should I change the screen100 type as modal dialog box or subscreen, as now it is defined as normal screen??

REPORT ZTEXT_EDITOR.

DATA: LINE_LENGTH TYPE I VALUE 254,

EDITOR_CONTAINER TYPE REF TO CL_GUI_CUSTOM_CONTAINER,

TEXT_EDITOR TYPE REF TO CL_GUI_TEXTEDIT,

TEXT TYPE STRING.

START-OF-SELECTION.

CALL SCREEN '100'.

*&----


**& Module STATUS_0100 OUTPUT

*&----


  • text

*----


MODULE STATUS_0100 OUTPUT.

SET PF-STATUS 'STATUS_0100'.

IF TEXT_EDITOR IS INITIAL.

CREATE OBJECT EDITOR_CONTAINER

EXPORTING

CONTAINER_NAME = 'TEXTEDITOR'

EXCEPTIONS

CNTL_ERROR = 1

CNTL_SYSTEM_ERROR = 2

CREATE_ERROR = 3

LIFETIME_ERROR = 4

LIFETIME_DYNPRO_DYNPRO_LINK = 5.

CREATE OBJECT TEXT_EDITOR

EXPORTING

PARENT = EDITOR_CONTAINER

WORDWRAP_MODE = CL_GUI_TEXTEDIT=>WORDWRAP_AT_FIXED_POSITION

WORDWRAP_POSITION = LINE_LENGTH

WORDWRAP_TO_LINEBREAK_MODE = CL_GUI_TEXTEDIT=>TRUE.

*3)HIDE TOOLBAR AND STATUSBAR

CALL METHOD TEXT_EDITOR->SET_TOOLBAR_MODE

EXPORTING

TOOLBAR_MODE = CL_GUI_TEXTEDIT=>FALSE.

CALL METHOD TEXT_EDITOR->SET_STATUSBAR_MODE

EXPORTING

STATUSBAR_MODE = CL_GUI_TEXTEDIT=>FALSE.

ENDIF.

ENDMODULE. " STATUS_0100 OUTPUT

&----


*& Module USER_COMMAND_0100 INPUT

&----


  • text

----


MODULE USER_COMMAND_0100 INPUT.

CASE SY-UCOMM.

WHEN 'EXIT'.

LEAVE PROGRAM.

WHEN 'SAVE'.

CALL METHOD TEXT_EDITOR->GET_TEXTSTREAM

  • EXPORTING

  • ONLY_WHEN_MODIFIED = CL_GUI_TEXTEDIT=>TRUE

IMPORTING

TEXT = TEXT

  • IS_MODIFIED =

EXCEPTIONS

ERROR_CNTL_CALL_METHOD = 1

NOT_SUPPORTED_BY_GUI = 2

OTHERS = 3.

IF SY-SUBRC <> 0.

MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

CALL METHOD CL_GUI_CFW=>FLUSH

EXCEPTIONS

CNTL_SYSTEM_ERROR = 1

CNTL_ERROR = 2

OTHERS = 3.

MESSAGE TEXT TYPE 'I'.

ENDCASE.

ENDMODULE. " USER_COMMAND_0100 INPUT