Slide/Range Control 1.1 (x32/x64+Theme-Support)

Hier könnt Ihr gute, von Euch geschriebene Codes posten. Sie müssen auf jeden Fall funktionieren und sollten möglichst effizient, elegant und beispielhaft oder einfach nur cool sein.
Lambda
Beiträge: 526
Registriert: 16.06.2011 14:38

Slide/Range Control 1.1 (x32/x64+Theme-Support)

Beitrag von Lambda »

Hallo PBBFF´s

mal wieder ein Lebenszeichen. Neben dem optimierten Fivestar existieren natürlich bereits weitere, sobald diese in ihrem Umfang fertig sind, teile ich diese ebenfalls.

Das Slide Control ist eine umfangreichere Nachbildung des TrackBar. Es bietet unter anderem auch einen zweiten Greifer, welcher somit eine Bereich-Auswahl ermöglicht.

Features
  • Theme-Support
  • Keyboard-Support*
  • Automatische vertikal/horizontal Ausrichtung
  • Anzeige Spiegeln
  • Schritt-Angabe
  • Schritt-Anzeige
  • Beschriftung-Anzeige
  • Fließkomma-Werte
  • Bereich-Auswahl durch zweiten Greifer
  • Min/Max Werte
  • Min. Bereich
  • Mausrad-Unterstützung
  • Sprung durch Mausklick auf Leiste
  • Masken für die Labels
  • Anzeige nur bei Aktion anzeigen (ohne #SLIDE_STATIC)
  • Label-Anpassung
  • Weitere Optimierungen
* Pfeiltasten um markierten Greifer zu bewegen; STRG+Pfeiltasten um Greifer zu wechseln

Theme-Attribute:

Code: Alles auswählen

  #SLIDE_COLOR_BKGND
  #SLIDE_COLOR_TEXT
  #SLIDE_COLOR_BORDER
  #SLIDE_COLOR_LABEL
  #SLIDE_COLOR_LINE
  #SLIDE_COLOR_FOCUS
  #SLIDE_COLOR_TICK
  #SLIDE_METRICS_ARROW
  #SLIDE_METRICS_MRGLEFT
  #SLIDE_METRICS_MRGTOP
  #SLIDE_METRICS_MRGRIGHT
  #SLIDE_METRICS_MRGBOTTOM
  #SLIDE_FONT
Zuletzt geändert von Lambda am 08.05.2013 15:10, insgesamt 2-mal geändert.
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7032
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Re: Slide/Range Control (x32/x64+Theme-Support)

Beitrag von STARGÅTE »

Also die Beispiele sind zutiefst verwirrend:
  • Wieso übergibst du manche Konstanten immer mehrmals?
    ..., #SLIDE_BOX|#SLIDE_LABEL|#SLIDE_LINE|#SLIDE_LABEL|#SLIDE_MIRROR|#SLIDE_BOX|#SLIDE_TICKS|#SLIDE_RANGE)
  • Wieso kann man bei Slide_SetState() nur einen Wert übergeben, obwohl das Gadget eine Range hat?
    Intuitiv würde ich zwei parameter erwarten.
  • Wieso ist die Schrittweite per Default bei 10?
Was ich überhaupt nicht verstehe ist: Du schreibst "•Fließkomma-Werte", diese werden aber ganz und garnicht unterstützt.
  • Die Labelanzeige zeigt immer nur Ganzzahlen
  • Min und Max in Slide_Create() nehmen nur Integers (also 0 bis 0.1 geht nicht)
Ansonsten, von der Optik her OK. Eine Mausradunterstützung wäre noch angebracht.
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Lambda
Beiträge: 526
Registriert: 16.06.2011 14:38

Re: Slide/Range Control (x32/x64+Theme-Support)

Beitrag von Lambda »

Das war erst einmal lediglich eine Preview. :D Alles von dir genannte wird morgen noch fein gestimmt. Einziger Fehler den ich festgestellt habe: unter x64 wechselt die Markierung mit Pfeiltaste ohne STRG auf den Bereich-Greifer.
Wieso kann man bei Slide_SetState() nur einen Wert übergeben, obwohl das Gadget eine Range hat?
Intuitiv würde ich zwei parameter erwarten.
Das stimmt, wird noch geändert. Aktuell gibt es dafür Slide_SetNull().

Die doppelten Konstanten sind allerdings überflüssig. :mrgreen: Sollte unter Lärm und Stress bei der Arbeit keine Veröffentlichungen vornehmen. :D
Lambda
Beiträge: 526
Registriert: 16.06.2011 14:38

Re: Slide/Range Control (x32/x64+Theme-Support)

Beitrag von Lambda »

So, alles besagte wurde korrigiert.
  • Mousewheel-Support
  • Sprung durch Mausklick auf Leiste
  • Masken für die Labels
  • Anzeige nur bei Aktion anzeigen (ohne #SLIDE_STATIC)
  • Label-Anpassung
  • Leistenfüllung optional (nur bei einzelnem Greifer)
  • Weitere Optimierungen
  • Optionales Interface*
* Leider hat mir Tailbite hier mit einem "UNDEFINED_SYMBOL" einen Strich durch die Rechnung gemacht. Mal sehen ob sich das beheben lässt.
Antworten