Ejemplo n.º 1
0
        /// <inheritdoc />
        public void Dispose()
        {
            LogTo.Debug("Cleaning up {Name}", GetType().Name);

            _controlGroup?.Dispose();
            SMMainWdwPtr?.Dispose();
            ElementWdwPtr?.Dispose();
            ElementIdPtr?.Dispose();
            CurrentConceptIdPtr?.Dispose();
            CurrentConceptGroupIdPtr?.Dispose();
            CurrentRootIdPtr?.Dispose();
            CurrentHookIdPtr?.Dispose();
            LearningModePtr?.Dispose();

            SMMainWdwPtr             = null;
            ElementWdwPtr            = null;
            ElementIdPtr             = null;
            CurrentConceptIdPtr      = null;
            CurrentConceptGroupIdPtr = null;
            CurrentRootIdPtr         = null;
            CurrentHookIdPtr         = null;
            LearningModePtr          = null;

            LogTo.Debug("Cleaning up {Name}... Done", GetType().Name);
        }
Ejemplo n.º 2
0
        public bool SetCurrentConcept(int conceptId)
        {
            var concept = Core.SM.Registry.Concept[conceptId];

            if (concept == null || concept.Empty)
            {
                return(false);
            }

            // SetDefaultConcept is actually a TSMMain method
            var success = Core.Natives.SMMain.SelectDefaultConcept(SMMainWdwPtr.Read <IntPtr>(), conceptId);

            return(success && CurrentConceptId == conceptId);
        }