Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  PTC Creo Elements/Direct Modeling
  OSDM Menue-Punkte enablen

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für PTC CREO
Autor Thema:  OSDM Menue-Punkte enablen (1167 mal gelesen)
gesch
Mitglied
Konstrukteur


Sehen Sie sich das Profil von gesch an!   Senden Sie eine Private Message an gesch  Schreiben Sie einen Gästebucheintrag für gesch

Beiträge: 18
Registriert: 24.04.2003

erstellt am: 03. Mrz. 2005 12:17    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo CC-Fans,

habe ein kleines Problem, vielleicht kann mir jemand weiterhelfen:

Mann kann in der Datei sd_avail_cmds.cmd eigene Funktionen integrieren. Ob eine Funktion enabled ist oder nicht kann mit
:enable gesteuert werden.

Frage: Wenn ich hier den Wert einer von mir in meinen Makros gesetzten Lisp-Variable abfrage (z.B.: :enable *XYZ_MENUE_ACTIVE* ) ist diese den Menue-Funktionen unbekannt (Menue ist immer grau egal wie ich *XYZ_MENUE_ACTIVE* setze (T/NIL) !).

Wie muss ich hier vorgehen. Hat jemand vielleicht ein kleines Beispiel?

Vielen Dank im Voraus!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Dorothea
Mitglied



Sehen Sie sich das Profil von Dorothea an!   Senden Sie eine Private Message an Dorothea  Schreiben Sie einen Gästebucheintrag für Dorothea

Beiträge: 242
Registriert: 22.11.2001

erstellt am: 03. Mrz. 2005 12:45    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für gesch 10 Unities + Antwort hilfreich

Hallo,

Bist du dir sicher, dass die Variable auch im richtigen package ist? Rufts du sie auch aus diesem package aus? Sicherheitshalber schreibe mal immer dsa packge vor deine Variable, z.B.:

Code:
my-package::*XYZ_MENUE_ACTIVE*

Gruss Dorothea

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

gesch
Mitglied
Konstrukteur


Sehen Sie sich das Profil von gesch an!   Senden Sie eine Private Message an gesch  Schreiben Sie einen Gästebucheintrag für gesch

Beiträge: 18
Registriert: 24.04.2003

erstellt am: 03. Mrz. 2005 13:57    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Vielen Dank fuer die schnelle Antwort, aber wenn ich das Lisp-Package vor die Variable schreibe startet das OSDM nicht mehr richtig und es kommt schon gleich am anfang ein Fehler: "LISP-Fehler: There is no Package with the name my-package.

Anscheinend werden meine Makros ueber die sd_customize erst spaeter geladen als die Menues aktiviert werden und die Variablen von mir sind zu dem Zeitpunkt noch unbekannt!

Wer kann helfen?

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Dorothea
Mitglied



Sehen Sie sich das Profil von Dorothea an!   Senden Sie eine Private Message an Dorothea  Schreiben Sie einen Gästebucheintrag für Dorothea

Beiträge: 242
Registriert: 22.11.2001

erstellt am: 03. Mrz. 2005 15:14    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für gesch 10 Unities + Antwort hilfreich

Hallo,

Ich weiss nicht, ob das jetzt eine elegante Loesung ist. Aber beim mir tut das so:
Ich definiere mir eine Funktion im mei-package. Das File, das die Funktionsdefinition enhaelt, macht nichts weiter ausser meine Tools fuer die available commands zu definieren. Im sd_avail_cmds File schreibe ich dann mei::_xxx_. Dieses package ist naemlich bekannt zu der Zeit, wenn das File geladen wird.
Vielleicht gibt dir ja jemand noch eine Anleitung fuer eine korrekte Loesung. Aber probieren kannst du es zunaechst mal so.

Gruss Dorothea

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

der_Wolfgang
Ehrenmitglied V.I.P. h.c.
Tastenhauer


Sehen Sie sich das Profil von der_Wolfgang an!   Senden Sie eine Private Message an der_Wolfgang  Schreiben Sie einen Gästebucheintrag für der_Wolfgang

Beiträge: 2017
Registriert: 3.20.

● PE6+8@home
● W10 Pro Build19044.2364
● Drafting V20.1+4
● Modeling V20.1+4

erstellt am: 03. Mrz. 2005 20:07    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für gesch 10 Unities + Antwort hilfreich

Hi,

Code:

(in-package :my-package)
(use-package : oli)

(defvar mei::*XYZ_MENUE_ACTIVE*)

(defun ratata-pipapo (laberbla)
  (progn....
    (if wenns-denn-sein-muss
      (setq mei::*XYZ_MENUE_ACTIVE* T)
      ;; else
    (setq mei::*XYZ_MENUE_ACTIVE* NIL)
  )
)


So kannst Du alle Deine Sachen in deinem Package machen hast aber zum avail-cmds hin nicht das package problem.

Du koenntest natuerlich auch folgendes machen (was ich fuer besser halte)

Code:

(in-package :my-package)
(use-package : oli)

(defvar *XYZ_MENUE_ACTIVE*)


(defun ratata-pipapo (laberbla)
..
)

(sd-define-available-command ...
  :enable          *XYZ_MENUE_ACTIVE*
  ....
)


Wenn Du dann dieses deine Lisp file mal einem netten Kollegen gibst, hat er automagisch auch das passende avail-command in seinem OSD und braucht selbiges nur in eine Toolbox seiner Wahl zu schubsen.  -- Kein haendisches editieren von sd_avail_cmds.cmd, was man eh nicht machen sollte.

PS: die IKIT docu liefert mal wieder ein hervorragendes vollstaendiges Beispiel. 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz