Skip to content

mcGrid_Initialize & mcGrid_Terminate definitions are missing... #95

Open

Description

@CodeVisio

Hi,

I've been looking to your great controls but I couldn't find the definition of the two functions above.

Am I missing something?

Thanks

Activity

  1. CodeVisio commented on Mar 23, 2023

    @CodeVisio
    Author

    Are you still developing those tools?
    The last changes were many years ago.

  2. codygray commented on Jul 4, 2023

    @codygray

    The definitions for these functions aren't missing, they are just named something other than what you expect. Look in the grid.c file for the functions named grid_init_module and grid_fini_module. These two functions correspond to mcGrid_Initialize and mcGrid_Terminate, respectively.

    The mCtrl.def file's EXPORTS statement lists the names of the functions that are exported by the DLL. In here, you'll see the names you expect, mcGrid_Initialize and mcGrid_Terminate, just like in the header file, grid.h.

    The dots are connected by code in module.c; look at the DEFINE_MODULE and DEFINE_PUBLIC_IFACE macros. When expanded out, these have the result of mapping grid_init_module to mcGrid_Initialize and grid_fini_module to mcGrid_Terminate, along with the equivalents for all of the other controls.

    I have no idea why the decision was made to name the internal implementations something different from what is exported, but the definitions are there, and they do work.

    As for whether the library is still being developed, I don't have any inside information there, either, but it certainly doesn't look like there is any active development going on. As you noted, the last changes were many years ago, and there is a pending PR from 2 years ago that is a very simple, very critical fix, which hasn't been merged yet. I'd assume the author was indisposed, but he's updated some of his other repositories, so I guess he has just lost interest in this one.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions