Author Topic: Possible bug in toolbar load and unload code  (Read 1956 times)

PurdueEEGrad

  • Senior Community Member
  • Posts: 115
  • Hero Points: -17
Possible bug in toolbar load and unload code
« on: September 13, 2016, 02:51:24 AM »
I am trying out some modifications to my existing custom toolbar
macro code. I use the attached testcases as a template to start
playing around with a new toolbar. These testcases do not seem
to work on V21Beta 5.

See that attached screen shots for the gist of what appears to be
a bug in V21Beta 5 - relative to the attached code that use to work
in earlier versions.

Hopefully I am not missing some simple problem in the code.

Clark

  • SlickEdit Team Member
  • Senior Community Member
  • *
  • Posts: 6864
  • Hero Points: 528
Re: Possible bug in toolbar load and unload code
« Reply #1 on: September 13, 2016, 01:54:05 PM »
The problem is that Slick-C is case sensitive.

You've defined your form names as "aaa_Test_<more>" but your static table references "aaa_test_<more>".

You have a command called "unload". I recommend renaming that because there already is an important "unload" command defined in "slickc.e".

PurdueEEGrad

  • Senior Community Member
  • Posts: 115
  • Hero Points: -17
Re: Possible bug in toolbar load and unload code
« Reply #2 on: September 14, 2016, 03:53:09 PM »
Clark,

Thanks for 'fixing' my code for me :-)

I am still using the attached (zip) testcase to understand
the load/unload module process (I've reviewed the lastest SE help docs).

At your recommentation - I commented out my 'unload' command macro. I incorrectly
thought you had to define 'unload' as part of the module unload callback process.

In my mind - the SE Module unload callback process is similar to the intent of
a class destructor in C++. You need to 'clean up' your stuff from the SE state space.

Your recommendation worked - and moved me forward in my quest : But my current mission
to understand and code the SE module clean up process is not yet finished.

I have attached the latest version of 'testcase 06'.

I expected the following test command macros to be called during the module unload process;

      _command void _on_unload_module_test_prompt_verify_callback_sequence()  -  Verification of unload callback process
      _command void _on_unload_module_remove_all_toolbars()                   -  Actual cleanup function for test module

My SE Architecture reference for my thinking is attached.

Please read my comments in the attached PDF file.

      SE Arch - Load Unload - 04 - _command unload - September 2016.pdf

Finally could you comment on the unload callback process for the attached testcase 06?

What am I doing wrong ? ---- relative to testcase 06 cleaning up after itself during
the SE module unload process.

Most important : Where in the SE help documents is this explained? 

Thanks so much ahead of time.

PS. Students need to use SE for Software Engineering Tool R&D. They need to
clean up the SE statespace AFTER the experimentation/development process is complete.
Then they 'release' their finished work to software enginnering club repository.
This 'R&D workflow' - is then used in federally funded projects related to other
non-software engineering R&D - that requires custom software for R&D tools needed
for the main mission (ie; such as magnetic field simulators for propulsion systems).

We need to train freshman undergrads - so by the time they are in a Master's program
that can use SlickEdit as an important and critical tool for research and development.

The attached Zip file has the current version of Testcase 06 - with the unload clean up
callbacks - as I understand them. If there is any Slickedit Sample code - or a Slickedit SDK
that has sample code - could you point me in the right direction? I have a presentation on
SlickEdit next week - in prep for some students getting the 2016 SE edition when available.