Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Text editor programming

Former Member
0 Likes
680

Hi ,

Can any body provide me a coding example of Text editor in module pool.

3 REPLIES 3
Read only

Former Member
0 Likes
598

&----


*& Report ZCONTROLS_TREE_TEDIT_SPITTER

*&

&----


*&

*&

&----


REPORT zcontrols_tree_tedit_spitter MESSAGE-ID zmsg.

DATA : editor TYPE REF TO cl_gui_textedit,

tree TYPE REF TO cl_gui_simple_tree.

DATA : container TYPE REF TO cl_gui_custom_container,

splitter TYPE REF TO cl_gui_easy_splitter_container,

right TYPE REF TO cl_gui_container,

left TYPE REF TO cl_gui_container.

DATA : behaviour_left TYPE REF TO cl_dragdrop,

behaviour_right TYPE REF TO cl_dragdrop.

DATA : node_itab LIKE node_str OCCURS 0,

v_node_key TYPE tv_nodekey,

handle_drag_drop TYPE i.

----


  • CLASS lcl_dragobject DEFINITION

----


*

----


CLASS lcl_dragobject DEFINITION.

PUBLIC SECTION.

DATA : text TYPE mtreesnode-text.

ENDCLASS. "lcl_dragobject DEFINITION

----


  • CLASS EVENT_HANDLER DEFINITION

----


*

----


CLASS event_handler DEFINITION.

PUBLIC SECTION.

METHODS : handle_node_double_click

FOR EVENT node_double_click OF cl_gui_simple_tree

IMPORTING node_key,

handle_double_click

FOR EVENT dblclick OF cl_gui_textedit,

handle_left_drag

FOR EVENT on_drag OF cl_gui_simple_tree

IMPORTING node_key drag_drop_object,

handle_flavor_select

FOR EVENT on_get_flavor OF cl_gui_textedit

IMPORTING index line pos dragdrop_object flavors,

handle_right_drop

FOR EVENT on_drop OF cl_gui_textedit

IMPORTING index line pos dragdrop_object,

handle_drop_complete

FOR EVENT on_drop_complete OF cl_gui_simple_tree

IMPORTING node_key drag_drop_object.

ENDCLASS. "EVENT_HANDLER DEFINITION

----


  • CLASS EVENT_HANDLER IMPLEMENTATION

----


*

----


CLASS event_handler IMPLEMENTATION.

METHOD handle_node_double_click.

PERFORM node_double_click USING node_key.

ENDMETHOD. "HANDLE_NODE_DOUBLE_CLICK

METHOD handle_double_click.

PERFORM handle_double_click.

ENDMETHOD. "handle_double_click

METHOD handle_left_drag.

PERFORM handle_left_drag USING node_key drag_drop_object.

ENDMETHOD. "handle_left_drag

METHOD handle_flavor_select.

PERFORM handle_flavor_select USING index line pos dragdrop_object flavors.

ENDMETHOD. "handle_flavor_select

METHOD handle_right_drop.

PERFORM handle_right_drop USING index line pos dragdrop_object.

ENDMETHOD. "handle_right_drop

METHOD handle_drop_complete.

PERFORM handle_drop_complete USING node_key drag_drop_object.

ENDMETHOD. "handle_drop_complete

ENDCLASS. "EVENT_HANDLER IMPLEMENTATION

DATA : handler1 TYPE REF TO event_handler.

START-OF-SELECTION.

CALL SCREEN 9001.

&----


*& Module start OUTPUT

&----


  • text

----


MODULE start OUTPUT.

SET PF-STATUS 'ZSTAT1'.

IF container IS INITIAL.

CREATE OBJECT container

EXPORTING

container_name = 'CONTAINER_NAME'

EXCEPTIONS

cntl_error = 1

cntl_system_error = 2

create_error = 3

lifetime_error = 4

lifetime_dynpro_dynpro_link = 5

OTHERS = 6

.

IF sy-subrc <> 0.

MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno

WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

ENDIF.

CREATE OBJECT splitter

EXPORTING

parent = container

orientation = 1

name = 'Mohit'

EXCEPTIONS

cntl_error = 1

cntl_system_error = 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.

left = splitter->top_left_container.

right = splitter->bottom_right_container.

CREATE OBJECT editor

EXPORTING

parent = right

name = 'MohitEditor'

EXCEPTIONS

error_cntl_create = 1

error_cntl_init = 2

error_cntl_link = 3

error_dp_create = 4

gui_type_not_supported = 5

OTHERS = 6

.

IF sy-subrc <> 0.

MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno

WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

ENDIF.

CREATE OBJECT behaviour_right.

CALL METHOD behaviour_right->add

EXPORTING

flavor = 'Tree_copy_to_Edit'

dragsrc = ' '

droptarget = 'X'

effect = cl_dragdrop=>copy

EXCEPTIONS

already_defined = 1

obj_invalid = 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 behaviour_right->add

EXPORTING

flavor = 'Tree_move_to_Edit'

dragsrc = ' '

droptarget = 'X'

effect = cl_dragdrop=>copy

EXCEPTIONS

already_defined = 1

obj_invalid = 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 editor->set_dragdrop

EXPORTING

dragdrop = behaviour_right.

CREATE OBJECT tree

EXPORTING

parent = left

node_selection_mode = tree->node_sel_mode_single

name = 'MohitTree'

EXCEPTIONS

lifetime_error = 1

cntl_system_error = 2

create_error = 3

failed = 4

illegal_node_selection_mode = 5

OTHERS = 6

.

IF sy-subrc <> 0.

MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno

WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

ENDIF.

CREATE OBJECT behaviour_left.

CALL METHOD behaviour_left->add

EXPORTING

flavor = 'Tree_copy_to_Edit'

dragsrc = 'X'

droptarget = ' '

effect = cl_dragdrop=>copy

EXCEPTIONS

already_defined = 1

obj_invalid = 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 behaviour_left->add

EXPORTING

flavor = 'Tree_move_to_Edit'

dragsrc = 'X'

droptarget = ' '

effect = cl_dragdrop=>copy

EXCEPTIONS

already_defined = 1

obj_invalid = 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 behaviour_left->get_handle

IMPORTING

handle = handle_drag_drop

EXCEPTIONS

obj_invalid = 1

OTHERS = 2.

IF sy-subrc <> 0.

MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno

WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

ENDIF.

PERFORM fill_tree.

CALL METHOD tree->add_nodes

EXPORTING

table_structure_name = 'NODE_STR'

node_table = node_itab

EXCEPTIONS

error_in_node_table = 1

failed = 2

dp_error = 3

table_structure_name_not_found = 4

OTHERS = 5.

IF sy-subrc <> 0.

MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno

WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

ENDIF.

CREATE OBJECT handler1.

PERFORM register_events.

PERFORM register_events_textedit.

SET HANDLER handler1->handle_left_drag FOR tree.

SET HANDLER handler1->handle_drop_complete FOR tree.

SET HANDLER handler1->handle_right_drop FOR editor.

SET HANDLER handler1->handle_flavor_select FOR editor.

CALL METHOD tree->expand_node

EXPORTING

node_key = 'head_top'.

CALL METHOD tree->expand_node

EXPORTING

node_key = 'head_item'.

ENDIF.

ENDMODULE. " start OUTPUT

&----


*& Module USER_COMMAND_9001 INPUT

&----


  • text

----


MODULE user_command_9001 INPUT.

CALL METHOD cl_gui_cfw=>dispatch.

ENDMODULE. " USER_COMMAND_9001 INPUT

&----


*& Form fill_tree

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM fill_tree .

DATA : node LIKE node_str.

CLEAR node.

node-node_key = 'head_top'.

node-isfolder = 'X'.

node-text = 'Head1'.

node-dragdropid = ' '.

APPEND node TO node_itab.

CLEAR node.

node-node_key = 'Child1'.

node-relatkey = 'head_top'.

node-relatship = cl_gui_simple_tree=>relat_last_child.

node-text = 'First '.

node-dragdropid = handle_drag_drop.

APPEND node TO node_itab.

CLEAR node.

node-node_key = 'Child2'.

node-relatkey = 'head_top'.

node-relatship = cl_gui_simple_tree=>relat_last_child.

node-text = 'Second '.

node-dragdropid = handle_drag_drop.

APPEND node TO node_itab.

CLEAR node.

node-node_key = 'head_item'.

node-isfolder = 'X'.

node-text = 'Third'.

APPEND node TO node_itab.

CLEAR node.

node-node_key = 'Child3'.

node-relatkey = 'head_item'.

node-relatship = cl_gui_simple_tree=>relat_next_sibling.

node-text = ' INDIA '.

node-dragdropid = handle_drag_drop.

APPEND node TO node_itab.

CLEAR node.

node-node_key = 'Child4'.

node-relatkey = 'head_item'.

node-relatship = cl_gui_simple_tree=>relat_last_child.

node-text = 'SAP '.

node-dragdropid = handle_drag_drop.

APPEND node TO node_itab.

ENDFORM. " fill_tree

&----


*& Form node_double_click

&----


  • text

----


  • -->P_NODE_KEY text

----


FORM node_double_click USING p_node_key TYPE tv_nodekey.

CLEAR : v_node_key.

DATA : node LIKE node_str.

DATA textline(256).

DATA text_table LIKE STANDARD TABLE OF textline.

v_node_key = p_node_key.

READ TABLE node_itab WITH KEY node_key = p_node_key

INTO node.

IF sy-subrc = 0.

MOVE node-text TO textline.

APPEND textline TO text_table.

CALL METHOD editor->set_text_as_stream

EXPORTING

text = text_table

EXCEPTIONS

error_dp = 1

error_dp_create = 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.

ENDIF.

ENDFORM. " node_double_click

&----


*& Module exit INPUT

&----


  • text

----


MODULE exit INPUT.

CASE sy-ucomm.

WHEN 'EXIT'.

LEAVE PROGRAM.

ENDCASE.

ENDMODULE. " exit INPUT

&----


*& Form register_events

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM register_events .

DATA: lt_events TYPE cntl_simple_events,

l_event TYPE cntl_simple_event.

CALL METHOD tree->get_registered_events

IMPORTING

events = lt_events

EXCEPTIONS

cntl_error = 1

OTHERS = 2.

IF sy-subrc <> 0.

MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno

WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

ENDIF.

l_event-eventid = cl_gui_simple_tree=>eventid_node_double_click.

APPEND l_event TO lt_events.

CALL METHOD tree->set_registered_events

EXPORTING

events = lt_events

EXCEPTIONS

cntl_error = 1

cntl_system_error = 2

illegal_event_combination = 3

OTHERS = 4.

IF sy-subrc <> 0.

MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno

WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

ENDIF.

SET HANDLER handler1->handle_node_double_click FOR tree.

ENDFORM. " register_events

&----


*& Form register_events_textedit

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM register_events_textedit .

DATA: lt_events TYPE cntl_simple_events,

l_event TYPE cntl_simple_event.

CALL METHOD editor->get_registered_events

IMPORTING

events = lt_events

EXCEPTIONS

cntl_error = 1

OTHERS = 2.

IF sy-subrc <> 0.

MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno

WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

ENDIF.

l_event-eventid = cl_gui_textedit=>event_double_click.

APPEND l_event TO lt_events.

CALL METHOD editor->set_registered_events

EXPORTING

events = lt_events

EXCEPTIONS

cntl_error = 1

cntl_system_error = 2

illegal_event_combination = 3

OTHERS = 4.

IF sy-subrc <> 0.

MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno

WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

ENDIF.

SET HANDLER handler1->handle_double_click FOR editor.

ENDFORM. " register_events_textedit

&----


*& Form handle_double_click

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM handle_double_click .

DATA node LIKE node_str.

DATA textline1(256).

DATA text_table1 LIKE STANDARD TABLE OF textline1.

CALL METHOD editor->get_text_as_stream

EXPORTING

only_when_modified = 1

IMPORTING

text = text_table1

EXCEPTIONS

error_dp = 1

error_cntl_call_method = 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.

IF text_table1 IS NOT INITIAL.

READ TABLE text_table1 INTO textline1 INDEX 1.

IF v_node_key IS NOT INITIAL.

READ TABLE node_itab INTO node WITH KEY node_key = v_node_key.

IF sy-subrc = 0.

node-text = textline1.

MODIFY node_itab FROM node INDEX sy-tabix.

ENDIF.

CLEAR v_node_key.

ELSE.

MESSAGE e001 DISPLAY LIKE 'S'.

ENDIF.

CALL METHOD editor->set_text_as_stream

EXPORTING

text = text_table1

EXCEPTIONS

error_dp = 1

error_dp_create = 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 tree->delete_all_nodes

EXCEPTIONS

failed = 1

cntl_system_error = 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 tree->add_nodes

EXPORTING

table_structure_name = 'NODE_STR'

node_table = node_itab

EXCEPTIONS

error_in_node_table = 1

failed = 2

dp_error = 3

table_structure_name_not_found = 4

OTHERS = 5.

IF sy-subrc <> 0.

MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno

WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

ENDIF.

MESSAGE s000.

ENDIF.

ENDFORM. " handle_double_click

&----


*& Form handle_left_drag

&----


  • text

----


  • -->P_NODE_KEY text

  • -->P_DRAG_DROP_OBJECT text

----


FORM handle_left_drag USING p_node_key TYPE tv_nodekey

p_drag_drop_object TYPE REF TO cl_dragdropobject.

DATA : drag_object TYPE REF TO lcl_dragobject,

node TYPE node_str.

CREATE OBJECT drag_object.

READ TABLE node_itab INTO node WITH KEY node_key = p_node_key.

drag_object->text = node-text.

p_drag_drop_object->object = drag_object.

ENDFORM. " handle_left_drag

&----


*& Form handle_flavor_select

&----


  • text

----


  • -->P_INDEX text

  • -->P_LINE text

  • -->P_POS text

  • -->P_DRAGDROP_OBJECT text

  • -->P_FLAVORS text

----


FORM handle_flavor_select USING p_index TYPE i

p_line TYPE i

p_pos TYPE i

p_dragdrop_object TYPE REF TO cl_dragdropobject

p_flavors TYPE cndd_flavors.

IF p_index > 2.

SEARCH p_flavors FOR 'Tree_move_to_Edit'.

IF sy-subrc = 0.

CALL METHOD p_dragdrop_object->set_flavor

EXPORTING

newflavor = 'Tree_move_to_Edit'

EXCEPTIONS

illegal_state = 1

illegal_flavor = 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.

ELSE.

CALL METHOD p_dragdrop_object->abort

.

ENDIF.

ELSE.

SEARCH p_flavors FOR 'Tree_copy_to_Edit'.

IF sy-subrc = 0.

CALL METHOD p_dragdrop_object->set_flavor

EXPORTING

newflavor = 'Tree_copy_to_Edit'

EXCEPTIONS

illegal_state = 1

illegal_flavor = 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.

ELSE.

CALL METHOD p_dragdrop_object->abort

.

ENDIF.

ENDIF.

ENDFORM. " handle_flavor_select

&----


*& Form handle_right_drop

&----


  • text

----


  • -->P_INDEX text

  • -->P_LINE text

  • -->P_POS text

  • -->P_DRAGDROP_OBJECT text

----


FORM handle_right_drop USING p_index TYPE i

p_line TYPE i

p_pos TYPE i

p_dragdrop_object TYPE REF TO cl_dragdropobject.

DATA : textline(256).

DATA : text_table LIKE STANDARD TABLE OF textline.

DATA : dragobject TYPE REF TO lcl_dragobject.

CATCH SYSTEM-EXCEPTIONS move_cast_error = 1.

dragobject ?= p_dragdrop_object->object.

ENDCATCH.

IF sy-subrc = 1.

CALL METHOD p_dragdrop_object->abort .

EXIT.

ENDIF.

CALL METHOD editor->get_text_as_stream

IMPORTING

text = text_table

EXCEPTIONS

error_dp = 1

error_cntl_call_method = 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.

textline = dragobject->text.

INSERT textline INTO text_table INDEX 1.

CALL METHOD editor->set_text_as_stream

EXPORTING

text = text_table

EXCEPTIONS

error_dp = 1

error_dp_create = 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.

ENDFORM. " handle_right_drop

&----


*& Form handle_drop_complete

&----


  • text

----


  • -->P_NODE_KEY text

  • -->P_DRAG_DROP_OBJECT text

----


FORM handle_drop_complete USING p_node_key TYPE tv_nodekey

p_drag_drop_object TYPE REF TO cl_dragdropobject.

v_node_key = p_node_key.

IF p_drag_drop_object->flavor = 'Tree_move_to_Edit'.

v_node_key = ' '.

CALL METHOD tree->delete_node

EXPORTING

node_key = p_node_key.

DELETE node_itab WHERE node_key = p_node_key.

ENDIF.

ENDFORM. " handle_drop_complete

Read only

Former Member
0 Likes
598

Refer the following code

DATA:container TYPE scrfname VALUE 'CONT',(cont is container in screen 101)

cl_container TYPE REF TO cl_gui_custom_container,

text_area TYPE REF TO cl_gui_textedit.

data:okcode type sy-ucomm.

set screen 101.

MODULE STATUS_0101 OUTPUT.

set PF-STATUS 'MENU'.

IF CL_CONTAINER IS NOT INITIAL.

CALL METHOD CL_CONTAINER->FREE

EXCEPTIONS

CNTL_SYSTEM_ERROR = 1

CNTL_ERROR = 2.

IF SY-SUBRC 0.

MESSAGE A000(ZTMW_MSGTAB).

ENDIF.

CLEAR CL_CONTAINER."clearing the custom container1

ENDIF.

IF CL_CONTAINER IS INITIAL.

CREATE OBJECT CL_CONTAINER

EXPORTING CONTAINER_NAME = CONTAINER.

CREATE OBJECT TEXT_AREA

EXPORTING

parent = CL_CONTAINER

wordwrap_mode = cl_gui_textedit=>WORDWRAP_AT_WINDOWBORDER

wordwrap_to_linebreak_mode = cl_gui_textedit=>true.

CALL METHOD CL_CONTAINER->link

EXPORTING

repid = sy-repid

dynnr = '0101'

container = CONTAINER.

CALL METHOD CL_CONTAINER->set_width

EXPORTING

width = 15.

CALL METHOD CL_CONTAINER->set_height

EXPORTING

height = 5.

ENDIF.

ENDMODULE. " STATUS_0101 OUTPUT

MODULE USER_COMMAND_0101 INPUT.

CASE OKCODE."okcode of screen 101

WHEN 'BACK'.

SET SCREEN 0.

ENDCASE.

ENDMODULE. " USER_COMMAND_0101 INPUT

flow logic:

PROCESS BEFORE OUTPUT.

MODULE STATUS_0101.

PROCESS AFTER INPUT.

MODULE USER_COMMAND_0101.

Other wise plz refer this code

Steps

Create a report

In the start of selection event add: SET SCREEN '100'.

Create screen 100

Place a custom control on the screen by choosing the custom control icon which can be recognized by the letter 'C', and give it the name MYCONTAINER1.

To be able to exit the program, add a pushbutton with the function code EXIT.

In the elements list enter the name OK_CODE for the element of type OK.

The code

REPORT sapmz_hf_controls1 .

CONSTANTS:

line_length TYPE i VALUE 254.

DATA: ok_code LIKE sy-ucomm.

DATA:

Create reference to the custom container

custom_container TYPE REF TO cl_gui_custom_container,

Create reference to the TextEdit control

editor TYPE REF TO cl_gui_textedit,

repid LIKE sy-repid.

START-OF-SELECTION.

SET SCREEN '100'.

-


MODULE USER_COMMAND_0100 INPUT *

-


MODULE user_command_0100 INPUT.

CASE ok_code.

WHEN 'EXIT'.

LEAVE TO SCREEN 0.

ENDCASE.

ENDMODULE. " USER_COMMAND_0100 INPUT

&----


*& Module STATUS_0100 OUTPUT

&----


MODULE status_0100 OUTPUT.

The TextEdit control should only be initialized the first time the

PBO module executes

IF editor IS INITIAL.

repid = sy-repid.

Create obejct for custom container

CREATE OBJECT custom_container

EXPORTING

container_name = 'MYCONTAINER1'

EXCEPTIONS

cntl_error = 1

cntl_system_error = 2

create_error = 3

lifetime_error = 4

lifetime_dynpro_dynpro_link = 5

others = 6

.

IF sy-subrc 0.

MESSAGE ID sy-msgid TYPE 'I' NUMBER sy-msgno

WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

ENDIF.

Create obejct for the TextEditor control

CREATE OBJECT editor

EXPORTING

wordwrap_mode =

cl_gui_textedit=>wordwrap_at_fixed_position

wordwrap_position = line_length

wordwrap_to_linebreak_mode = cl_gui_textedit=>true

parent = custom_container

EXCEPTIONS

error_cntl_create = 1

error_cntl_init = 2

error_cntl_link = 3

error_dp_create = 4

gui_type_not_supported = 5

others = 6

.

IF sy-subrc 0.

MESSAGE ID sy-msgid TYPE 'I' NUMBER sy-msgno

WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

ENDIF.

ENDIF.

ENDMODULE. " STATUS_0100 OUTPUT

now you will get the text editor.

source is:

http://www.erpgenie.com/abap/controls/textedit.htm#Example%201:%20Creating%20the%20TextEdit%20contro...

Reward if Useful

Read only

Former Member
0 Likes
598

Hi, to learn Txt Editor you can use the demo program RSDEMO_DRAG_DROP_EDIT_TREE .

It also helps to learn drag and drop, and tree controls.

Hope this helps.

Regards,

Renjith Michael.