An example of a neurostimulation system may include a storage device, a programming control circuit, and a graphical user interface (GUI). The storage device may be configured to store individually definable waveforms. The programming control circuit may be configured to generate stimulation parameters controlling the delivery of the neurostimulation pulses according to a pattern. The GUI may be configured to define the pattern using one or more waveforms selected from the individually definable waveforms. The GUI may display waveform tags each selectable for access to a waveform of the individually definable waveforms, and display a waveform builder in response to selection of one of the waveform tags. The waveform builder may present a graphical representation of the accessed waveform and allow for the accessed waveform to be adjusted by editing the graphical representation of the accessed waveform on the GUI.Un exemple d'un système de neurostimulation selon l'invention peut comprendre un dispositif de stockage, un circuit de commande de programmation et une interface utilisateur graphique (GUI). Le dispositif de stockage peut être configuré pour stocker des formes d'onde pouvant être définies individuellement. Le circuit de commande de programmation peut être configuré pour générer des paramètres de stimulation qui commandent la délivrance des impulsions de neurostimulation selon un schéma. La GUI peut être configurée pour définir le schéma à l'aide d'une ou de plusieurs formes d'onde choisies parmi les formes d'onde pouvant être définies individuellement. La GUI peut afficher des étiquettes de forme d'onde pouvant chacune être sélectionnées pour accéder à une forme d'onde parmi les formes d'onde pouvant être définies individuellement, et afficher un générateur de forme d'onde en réponse à la sélection de l'une des étiquettes de forme d'onde. Le générateur de forme d'onde peut présenter une représentation graphique de la forme d'onde appelée et permettre à cette