Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  PTC Creo Elements/Programmierung
  Dialoge so pünktlich wie die Bahn

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:  Dialoge so pünktlich wie die Bahn (1571 mal gelesen)
AlexG
Mitglied



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

Beiträge: 132
Registriert: 05.04.2013

CP/M; 6510@0,985249 MHz; 64KB RAM; 20KB ROM; MOS 6569

erstellt am: 27. Jul. 2013 18:32    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 liebes Forum,

beim ausführen des folgenden exemplarischen Codes passiert etwas merkwürdiges.

Code:
(defun test ()
  (sd-show-dialog-shell "MY-DIALOG")
  (sleep 5))

Mein Dialog wird erst angezeigt, nachdem der Sleep ausgeführt wurde.

Auch auf Events reagiert er nicht. Das gleich passiert auch, wenn ich an die Stelle des sd-show-dialog-shell ein simples display setze. Bei einem sd-display-message jedoch verhält er sich wie erwartet.

Kann jemand dieses Verhalten nachvollziehen, sich erklären, oder hat es sogar einen Grund?
Und am wichtigsten für mich, kann man es umgehen?

Besten Dank vorab.

Gruß Alex

------------------
Computer sind
unbrauchbar. Sie können
nur Fragen beantworten.
Pablo Picasso, Maler

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

clausb
Ehrenmitglied V.I.P. h.c.



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

Beiträge: 2914
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 28. Jul. 2013 13:21    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 AlexG 10 Unities + Antwort hilfreich

Ich bin ja schon ein paar Jahre raus aus der Modeling-Entwicklung, aber wenn ich mal aus der Hüfte heraus schießen sollte, würde ich vermuten: Die Funktion (test) läuft im gleichen Thread wie das UI. Daher werden Events erst dann zuverlässig abgearbeitet, sobald die Funktion beendet ist, also nach dem (sleep).

------------------
CoCreate Modeling FAQ: http://www.clausbrod.de/CoCreateModeling/

[Diese Nachricht wurde von clausb am 28. Jul. 2013 editiert.]

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

AlexG
Mitglied



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

Beiträge: 132
Registriert: 05.04.2013

CP/M; 6510@0,985249 MHz; 64KB RAM; 20KB ROM; MOS 6569

erstellt am: 28. Jul. 2013 15:48    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

*EIN.ZÖGERLICHES.UND.LEISES* ok...

Vielleicht stehe ich ja auch nur etwas auf dem Schlauch. Aber habe ich denn überhaupt eine Möglichkeit (meine) Funktionen in separate Threads zu legen? *AM.KOPF.KRATZ*

Gruß Alex

------------------
Computer sind unbrauchbar. Sie können nur Fragen beantworten.
Pablo Picasso, Maler

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

clausb
Ehrenmitglied V.I.P. h.c.



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

Beiträge: 2914
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 29. Jul. 2013 17:33    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 AlexG 10 Unities + Antwort hilfreich

Nein - ich kenne jedenfalls keine Möglichkeit dazu.

------------------
CoCreate Modeling FAQ: http://www.clausbrod.de/CoCreateModeling/

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

AlexG
Mitglied



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

Beiträge: 132
Registriert: 05.04.2013

CP/M; 6510@0,985249 MHz; 64KB RAM; 20KB ROM; MOS 6569

erstellt am: 29. Jul. 2013 17:56    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

  ...schade.

Besten Dank für ihre Antworten Herr Brod.

Um einen "Fortschrittsbalken Dialog" (komisches Wort, sagt man das so?) zu basteln, versuchen Multithreading (z.B. Bordeaux Threads) in das Kyoto Common Lisp zu implementieren (ich weiß, manchmal habe ich verrückte Ideen  ) ist dann auch wohl mit Spatzen auf Kanonen geschossen - davon abgesehen, wäre das wahrscheinlich auch nicht möglich (in unter einer Dekade).

Aber es muss doch irgendwie gehen... also wenn einer noch eine Ideen hat, wie man einen Fortschrittsbalken Dialog bastelt (ich kann mich einfach nicht an dieses Wort gewöhnen), immer her damit.

Gruß Alex


------------------
Computer sind unbrauchbar. Sie können nur Fragen beantworten.
Pablo Picasso, Maler

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

clausb
Ehrenmitglied V.I.P. h.c.



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

Beiträge: 2914
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 29. Jul. 2013 18:39    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 AlexG 10 Unities + Antwort hilfreich

Seufz... leider ging meine Zeit im Modeling-Team zu Ende, kurz bevor ich dazu kam, diverse Erweiterungen in das dort verwendete KCL-Derivat einzubauen, die schon lange auf meiner Wunschliste waren. Zum Beispiel Multithreading-Support...

Ich erinnere mich dunkel, daß man mit Tricks erzwingen konnte, daß Events zwischendurch abgearbeitet werden. Weiß aber leider nicht mehr, wie das ging.

------------------
CoCreate Modeling FAQ: http://www.clausbrod.de/CoCreateModeling/

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

AlexG
Mitglied



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

Beiträge: 132
Registriert: 05.04.2013

CP/M; 6510@0,985249 MHz; 64KB RAM; 20KB ROM; MOS 6569

erstellt am: 29. Jul. 2013 19:52    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

Auch auf die Gefahr hin das ich mich jetzt wiederhole, aber:
    Schade. Auch wenn ich Multithreading im Solid Designer schon für eine (leicht) verrückte Idee halte. Stand CLOS eigentlich auch auf der Wunschliste?  

Falls sich der Nebel lichtet, und eine blasse Erinnerung zurück kehrt, auch wenn es nur ein Schlagwort ist, wäre ich sehr, sehr dankbar.

------------------
Computer sind unbrauchbar. Sie können nur Fragen beantworten.
Pablo Picasso, Maler

[Diese Nachricht wurde von AlexG am 29. Jul. 2013 editiert.]

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

clausb
Ehrenmitglied V.I.P. h.c.



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

Beiträge: 2914
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 29. Jul. 2013 21: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 AlexG 10 Unities + Antwort hilfreich

Yup, CLOS war auch auf der Wunschliste (einen guten Teil hatte ich sogar schon experimentell am Laufen), außerdem eine Slime-Integration ( http://common-lisp.net/project/slime/ ). Wären alles hübsche Projekte geworden ;-)

Wenn mir das mit den Events einfällt, sage ich hier Bescheid.


------------------
CoCreate Modeling FAQ: http://www.clausbrod.de/CoCreateModeling/

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

AlexG
Mitglied



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

Beiträge: 132
Registriert: 05.04.2013

CP/M; 6510@0,985249 MHz; 64KB RAM; 20KB ROM; MOS 6569

erstellt am: 30. Jul. 2013 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

Ich weiß gerade nicht welche Gefühle das in mir auslöst. Meine Mimik hat so ca. ungefähr folgenden Verlauf:  -->  -->  .
So viele schöne Ideen... und was wird draus? Nix!

*SICH.SELBST.ETWAS.VORMACH*EIN*
Wenn ich ehrlich sein soll, um OOP und Multithreading habe ich mich bis jetzt gerne herum gedrückt. Und was Slime angeht hätte ich Angst, dass ich bei den ganzen Tastenkürzeln einen Knoten in die Finger bekomme, oder noch schlimmer im Kopf.
*SICH.SELBST.ETWAS.VORMACH*AUS*

So jetzt habe ich mir das alles wieder "schön mies" geredet, und mir geht es gleich wieder viel besser.

Ist vielleicht ein bisschen arg Offtopic, und mit Sicherheit auch nicht legitim, aber fragen tu ich's trotzdem mal.
Wenn ich es richtig verstanden habe sind (Groß-)Teile des SolidDesigners in Lisp geschrieben? Welche IDE wird/wurde denn für die Entwicklung genutzt?

------------------
Computer sind unbrauchbar. Sie können nur Fragen beantworten.
Pablo Picasso, Maler

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

clausb
Ehrenmitglied V.I.P. h.c.



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

Beiträge: 2914
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 30. Jul. 2013 15:18    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 AlexG 10 Unities + Antwort hilfreich

Tja, was soll ich sagen - ich hätte diese und andere Erweiterungen gerne selbst eingebaut, aber dazu hat es anno dunnemals nicht mehr gereicht.

Für die SLIME-Integration hätte man Socket-Kommunikation, Threading-Support, Conditions, mindestens Teile von CLOS und andere allgemein nützliche Features einbauen müssen. Das wäre also ein großer Fortschritt für alle Lisp-Entwickler gewesen, ganz gleich, ob man nun SLIME selbst verwenden würde oder nicht.  (Gaaanz weit im Hinterkopf hatte ich IDE-Pläne, die über SLIME hinausgingen....)

Sehr große Teile von SolidDesigner sind in der Tat in Lisp geschrieben. Ich halte es für wahrscheinlich, daß SolidDesigner eines der größten Lisp-Projekte überhaupt ist. (Ich habe dazu mal bei einer Lisp-Konferenz einen Kurzvortrag gehalten, siehe http://www.clausbrod.de/Blog/DefinePrivatePublic20090620CommonLispInCoCreateModeling .)

Man kann nun zu den damals angedachten Erweiterungen denken, daß es jammerschade ist, dass aus den meisten nichts geworden ist. Aber ins Positive gewendet: Ich hielt viele dieser Erweiterungen damals für machbar, und das wären sie sicher auch heute noch. (PTC muß dazu aber auch einen Anreiz sehen - am besten kommt der vom Markt.)

------------------
CoCreate Modeling FAQ: http://www.clausbrod.de/CoCreateModeling/

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

AlexG
Mitglied



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

Beiträge: 132
Registriert: 05.04.2013

CP/M; 6510@0,985249 MHz; 64KB RAM; 20KB ROM; MOS 6569

erstellt am: 31. Jul. 2013 08:46    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

Ok, dann lasse ich jetzt meinen Namen ändern in Don... Don Quijote, stelle mich im Halbkreis auf und fange an zu demonstrieren:
"Wir woll'n Multithreading, CLOS und auch SLIME. Wir woll'n... und jetzt alle im Kanon!..."

Ich glaube, auch wenn ich bis jetzt noch keinen großen Kontakt mit PTC selbst hatte, dass man mit solchen Wünschen auf einem verlorenen Posten steht. Das ist weder negativ gegenüber den Mitarbeitern, noch dem Unternehmen selbst gemeint, da ich es nachvollziehen kann wenn wünsche dieser Art ganz weit hinten anstehen müssen, da sie eine nur sehr kleine Klientel betreffen.

Und wer weiß schon wie weit uns die PTC Roadmap überhaupt noch in diese Richtung führt? ...mein heiß geliebtes Lisp *SCHNAUB*.

Nachtrag: CLOS hat sich erledigt... hab's gefunden.

------------------
Computer sind unbrauchbar. Sie können nur Fragen beantworten.
Pablo Picasso, Maler

[Diese Nachricht wurde von AlexG am 31. Jul. 2013 editiert.]

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.

● PE60+80@home
● W10 Pro Build19044.2364
● Drafting V17~V20.5.1
● Modeling V17~V20.5.1

erstellt am: 09. Aug. 2013 14:51    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 AlexG 10 Unities + Antwort hilfreich

Mir geht es da ja so aehnlich    wie dem Claus....
Zitat:
Ich bin ja schon ein paar Jahre raus aus der Modeling-Entwicklung, aber...
aber..  konnte man mit SD-INTERACTIVE-EVENT (oder so aehnlich ) nicht auch ein Redraw des UI's triggern?

Den Mach-Mal-Langsam-Balken mit rechteckigen Elementen aus dem UICT designen.....

Nur mal so halb laut gedacht.

------------------
Seamonkey FirefoxJava Forum Stuttgart JUGS ● OSD Hilfeseite (de) / help page (en)NotePad++

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

AlexG
Mitglied



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

Beiträge: 132
Registriert: 05.04.2013

CP/M; 6510@0,985249 MHz; 64KB RAM; 20KB ROM; MOS 6569

erstellt am: 09. Aug. 2013 22:28    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

*STIRN.RUNZEL* ...jetzt habe ich wohl die (Dialog)Bahn verpasst, und steh hier alleine am Bahnhof. 

Der "Mach-Mal-Langsam-Balken" an sich ist nicht das Problem. Aber ich bekomme es leider mit keinem Event hin, dass mein Dialog aktualisiert wird. Leider auch nicht wenn ich ein interaktives Event erzwinge.

Vielleicht liegt es auch einfach nur an der Uhrzeit... ich werde mich morgen noch einmal mit dem Thema auseinander setzen.
Wollte mich eigentlich auch nur kurz für den Tip bedanken.

Gruß Alex

------------------
Computer sind unbrauchbar. Sie können nur Fragen beantworten.
Pablo Picasso, Maler

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

AlexG
Mitglied



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

Beiträge: 132
Registriert: 05.04.2013

CP/M; 6510@0,985249 MHz; 64KB RAM; 20KB ROM; MOS 6569

erstellt am: 10. Aug. 2013 18:41    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

GAMEOVER...

...aber immerhin hab ich einen neuen Highscore aufgestellt: Ich habe wirklich noch nie so viele (blödsinnige) Zeilen Code in Lisp geschrieben die nicht funktionierten. Bitte nicht schlagen, aber ich habe mich dann der einfach halt halber für die folgende Lösung entschieden:

Sd-sys-background-job ruft AutoIt Script mit Fortschritts(bzw. Mach-Mal-Langsam)-Balken auf.

Falls jemand noch eine elegantere Lösung findet oder Interesse an meinem Provisorium besteht, einfach melden.

RESPAWN:

Hab doch noch eine andere Lösung gefunden:

Code:

(defun progress-bar (&key percentage finalize)
(let (
  (probe-struct
  (read-from-string
    (format nil
    "#s(frame2-ui: robe
        frame2-ui::eventno 1
        frame2-ui::currticks ~a
        frame2-ui::maxticks 100)" percentage))))

(if finalize
  (frame2-ui::hide-probe-display)
  (frame2-ui::update-probe-display probe-struct))))


Gruß Alex

------------------
Computer sind unbrauchbar. Sie können nur Fragen beantworten.
Pablo Picasso, Maler

[Diese Nachricht wurde von AlexG am 06. Mai. 2015 editiert.]

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