![]() |
Telelogic DOORS (steve huntington) | ![]() |
new topic :
profile :
search :
help :
dashboard :
calendar :
home
|
||
Latest News:
|
|
Topic Title: menu control by DXL event Topic Summary: Created On: 28-Jul-2006 15:14 Status: Post and Reply |
Linear : Threading : Single : Branch |
![]() |
![]()
|
![]() |
|
Hi all,
does anybody know how DXL sends a keyboard event to the module window? I want to activate the module menu by sending the accelerator key event to it. For instance to call the file menu the "Ctrl + F" must be sent to the menu bar. Thank you for answers |
|
![]() |
|
![]() |
|
Hi Darius,
I do not really understand your question. If you want to activate a DOORs built in menu function, you may have a look into \lib\dxl\config\formal.dxl There is defined the standard Module's menu. So you may find out the function you need. If you want to use accelerator keys for your own menu, you need to write a DXL script to create the menu (It should look like the functions within the formal.dxl). Then you have to place this file into \lib\dxl\config\formalFiles directory. As a parameter to the createItem you can define the accelerator key. I hope this will help you a little bit ![]() Greetings Reik ------------------------- Evosoft GmbH for Siemens Industry Sector Berlin, Germany |
|
![]() |
|
![]() |
|
Hi Reik,
thank you for your answer, but it does not really hit the nail on the head. I see I did not describe the problem well. The task is to start the word export menu by a keyboard event implemented in the DXL script. I want to send the "Alt+F+E+O+W" string as a keyboard event to the module window to open word export. Does DXL support this "Windows API like" method? Regards Darius Dolnik |
|
![]() |
|
![]() |
|
Hi Darius,
the thing, you are looking fore may be this one ![]() eval_ (readFile doorsHome "/lib/dxl/standard/export/office/word.dxl") The path and filename are extracted from formal.dxl. Greetings Reik ------------------------- Evosoft GmbH for Siemens Industry Sector Berlin, Germany |
|
![]() |
|
![]() |
|
Hi Reik,
your solution works well. I got the same result using the #include command with "doorshome...word.dxl" directory. Where is the "eval_" function documented? I did not find anything about this function in common manuals. The next challenge is to control the elements of the word export window. I want to use the "word.dxl" like a library and set some values via DXL: 1. Layout list box to "Table" 2. in "Advanced options" check box "Use normale template" to disable 3. in "Advanced options" edit box "Template name" to a particular file name After these actions are completed the OK-button-click should be generated by the DXL script to start the export. This approach is necessary to avoid any user interaction with the word export window. Is it possible to implement this solution in DXL? I have not found another good idea until now. Regards Darius Dolnik |
|
![]() |
|
![]() |
|
Think your approaching this problem the wrong way. As the word exporter dxl is unencrypted the optimum solution would be to copy the dxl somwhere else then modify the GUI ie. take away the options you don't want the user to have then simply add the code to a company specific menu or overide the telelogic word exporter with your modified tool.
Tip: For table exports you will find that the rtf exporter "File->Export->Rich Text Format..." is very much quicker (especially for large OLE heavy modules) and probably gives much the same final export. ------------------------- Regards, Richard Good |
|
![]() |
|
![]() |
|
Hi Darius,
first answer: To get some information about eval_ function you may search in this forum for it Or you may look here Second one: Now I'm starting to understand what you want to do ![]() Richards hint is very correct - you are going the wrong way. The code for word export is readable and changeable, so you may copy and change it to work for you. To remote control some doors functions is the worst case, if you have no possibilty of get into the code ![]() Greetings Reik ------------------------- Evosoft GmbH for Siemens Industry Sector Berlin, Germany |
|
![]() |
|
![]() |
|
Hi guys,
thank you very much for your answers. I understand your objections to remote control the DOORS word export. My idea was to avoid all this effort needed to analyse the DXL export code. Some lines of DXL changing the dialog box values in a defined way are much nicer than the complex code adaptation. But at last I realized I have to accept this job. Regards Darius Dolnik |
|
![]() |
|
![]() |
|
Hi Darius,
of cause you could do the modifications in the way you wanted to do. You could change at end of code near line 2976 the block command into realize then modify the DBE you want (change your desired settings) and call the function, wich is call back for apply button .... and that's it. Greetings Reik P.S.: But the better way would be to try to understand the code in apply call back and use only that stuff you really need --> in best case without opening dialog ![]() ------------------------- Evosoft GmbH for Siemens Industry Sector Berlin, Germany |
|
![]() |
|
![]() |
|
Hi Reik,
your idea to use the realize command was the solution for my problem. Now I am using the callback function directly in the code. But I also modified the code a bit. The original DB is not active anymore. A new DB "appears" hidden on the screen as base window for the export progress bar. I also removed a lot of code necessary for the original DB. In general the "new" word export works well ![]() Thank you very much Take care Darius Dolnik |
|
![]() |
Telelogic DOORS
» General Discussion
»
menu control by DXL event
|
![]() |
FuseTalk Standard Edition v3.2 - © 1999-2009 FuseTalk Inc. All rights reserved.