Tweaking the GUI
The instrument information can be on the main tab Put the button behind the logo Embed the ABeeZee font and use it everywhere Add hover colors to glyph buttons Replace the "file open" glyph by a folder
This commit is contained in:
parent
279382a7b2
commit
59c64bcb91
8 changed files with 269 additions and 279 deletions
|
|
@ -5,11 +5,14 @@ set(EDITOR_RESOURCES
|
||||||
logo.png
|
logo.png
|
||||||
logo_text.png
|
logo_text.png
|
||||||
logo_text@2x.png
|
logo_text@2x.png
|
||||||
|
logo_full_white.png
|
||||||
icon_white.png
|
icon_white.png
|
||||||
icon_white@2x.png
|
icon_white@2x.png
|
||||||
knob48.png
|
knob48.png
|
||||||
knob48@2x.png
|
knob48@2x.png
|
||||||
Fonts/fluentui-system-regular-20.ttf
|
Fonts/fluentui-system-regular-20.ttf
|
||||||
|
Fonts/ABeeZee-Regular.ttf
|
||||||
|
Fonts/ABeeZee-Regular.ttf
|
||||||
PARENT_SCOPE)
|
PARENT_SCOPE)
|
||||||
|
|
||||||
function(copy_editor_resources SOURCE_DIR DESTINATION_DIR)
|
function(copy_editor_resources SOURCE_DIR DESTINATION_DIR)
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,9 @@
|
||||||
# data file for the Fltk User Interface Designer (fluid)
|
# data file for the Fltk User Interface Designer (fluid)
|
||||||
version 1.0305
|
version 1.0304
|
||||||
header_name {.h}
|
header_name {.h}
|
||||||
code_name {.cxx}
|
code_name {.cxx}
|
||||||
widget_class mainView {open
|
widget_class mainView {open
|
||||||
xywh {410 523 800 475} type Double
|
xywh {572 266 800 475} type Double
|
||||||
class LogicalGroup visible
|
class LogicalGroup visible
|
||||||
} {
|
} {
|
||||||
Fl_Group {} {
|
Fl_Group {} {
|
||||||
|
|
@ -12,112 +12,104 @@ widget_class mainView {open
|
||||||
class LogicalGroup
|
class LogicalGroup
|
||||||
} {
|
} {
|
||||||
Fl_Group {} {open
|
Fl_Group {} {open
|
||||||
xywh {5 4 100 101} box ROUNDED_BOX align 0
|
xywh {5 4 175 101} box ROUNDED_BOX align 0
|
||||||
class RoundedGroup
|
class RoundedGroup
|
||||||
} {
|
} {
|
||||||
Fl_Box {} {
|
Fl_Box {} {
|
||||||
comment {tag=kTagFirstChangePanel+kPanelGeneral}
|
comment {tag=kTagFirstChangePanel+kPanelGeneral}
|
||||||
image {../resources/icon_white.png} xywh {7 6 96 96}
|
image {../resources/logo_full_white.png} xywh {10 11 165 63}
|
||||||
class SfizzMainButton
|
class SfizzMainButton
|
||||||
}
|
}
|
||||||
|
Fl_Button {} {
|
||||||
|
comment {tag=kTagFirstChangePanel+kPanelGeneral}
|
||||||
|
xywh {55 75 25 25} labelsize 24
|
||||||
|
class HomeButton
|
||||||
|
}
|
||||||
|
Fl_Button {} {
|
||||||
|
comment {tag=kTagFirstChangePanel+kPanelControls}
|
||||||
|
xywh {80 75 25 25} labelsize 24
|
||||||
|
class CCButton
|
||||||
|
}
|
||||||
|
Fl_Button {} {
|
||||||
|
comment {tag=kTagFirstChangePanel+kPanelSettings}
|
||||||
|
xywh {105 75 25 25} labelsize 24
|
||||||
|
class SettingsButton
|
||||||
|
}
|
||||||
}
|
}
|
||||||
Fl_Group {} {open
|
Fl_Group {} {open
|
||||||
xywh {110 5 380 100} box ROUNDED_BOX
|
xywh {185 5 380 100} box ROUNDED_BOX
|
||||||
class RoundedGroup
|
class RoundedGroup
|
||||||
} {
|
} {
|
||||||
Fl_Box {} {
|
Fl_Box {} {
|
||||||
label {File:}
|
label {File:}
|
||||||
xywh {125 15 40 25} labelsize 16
|
xywh {200 13 40 30} labelsize 16
|
||||||
class Label
|
class Label
|
||||||
}
|
}
|
||||||
Fl_Box {} {
|
Fl_Box {} {
|
||||||
label {KS:}
|
label {KS:}
|
||||||
xywh {125 45 40 25} labelsize 16
|
xywh {200 45 40 30} labelsize 16
|
||||||
class Label
|
class Label
|
||||||
}
|
}
|
||||||
Fl_Box {} {
|
Fl_Box {} {
|
||||||
label {Separator 1}
|
label {Separator 1}
|
||||||
xywh {120 40 355 5} box BORDER_BOX labeltype NO_LABEL
|
xywh {195 41 360 5} box BORDER_BOX labeltype NO_LABEL
|
||||||
class HLine
|
class HLine
|
||||||
}
|
}
|
||||||
Fl_Box {} {
|
Fl_Box {} {
|
||||||
label {Separator 2}
|
label {Separator 2}
|
||||||
xywh {120 70 355 5} box BORDER_BOX labeltype NO_LABEL
|
xywh {195 73 360 5} box BORDER_BOX labeltype NO_LABEL
|
||||||
class HLine
|
class HLine
|
||||||
}
|
}
|
||||||
Fl_Box sfzFileLabel_ {
|
Fl_Box sfzFileLabel_ {
|
||||||
label {DefaultInstrument.sfz}
|
label {DefaultInstrument.sfz}
|
||||||
xywh {190 15 230 25} labelsize 20
|
xywh {265 12 230 30} labelsize 20
|
||||||
class Label
|
class Label
|
||||||
}
|
}
|
||||||
Fl_Box {} {
|
Fl_Box {} {
|
||||||
label {Key switch}
|
label {Key switch}
|
||||||
xywh {190 45 230 25} labelsize 20
|
xywh {265 44 230 30} labelsize 20
|
||||||
class Label
|
class Label
|
||||||
}
|
}
|
||||||
Fl_Box {} {
|
Fl_Box {} {
|
||||||
label {Voices:}
|
label {Voices:}
|
||||||
xywh {120 75 60 25} labelsize 12 align 24
|
xywh {195 76 60 25} labelsize 12 align 24
|
||||||
class Label
|
class Label
|
||||||
}
|
}
|
||||||
Fl_Button {} {
|
Fl_Button {} {
|
||||||
comment {tag=kTagLoadSfzFile}
|
comment {tag=kTagLoadSfzFile}
|
||||||
xywh {425 15 25 25} labelsize 24
|
xywh {500 14 25 25} labelsize 24
|
||||||
class LoadFileButton
|
class LoadFileButton
|
||||||
}
|
}
|
||||||
Fl_Button {} {
|
Fl_Button {} {
|
||||||
comment {tag=kTagEditSfzFile}
|
comment {tag=kTagEditSfzFile}
|
||||||
xywh {450 15 25 25} labelsize 24
|
xywh {525 14 25 25} labelsize 24
|
||||||
class EditFileButton
|
class EditFileButton
|
||||||
}
|
}
|
||||||
Fl_Box infoVoicesLabel_ {
|
Fl_Box infoVoicesLabel_ {
|
||||||
xywh {185 75 50 25} labelsize 12 align 16
|
xywh {260 76 50 25} labelsize 12 align 16
|
||||||
class Label
|
class Label
|
||||||
}
|
}
|
||||||
Fl_Box {} {
|
Fl_Box {} {
|
||||||
label {Max:}
|
label {Max:}
|
||||||
xywh {240 75 60 25} labelsize 12 align 24
|
xywh {315 76 60 25} labelsize 12 align 24
|
||||||
class Label
|
class Label
|
||||||
}
|
}
|
||||||
Fl_Box numVoicesLabel_ {
|
Fl_Box numVoicesLabel_ {
|
||||||
xywh {305 75 50 25} labelsize 12 align 16
|
xywh {380 76 50 25} labelsize 12 align 16
|
||||||
class Label
|
class Label
|
||||||
}
|
}
|
||||||
Fl_Box {} {
|
Fl_Box {} {
|
||||||
label {Memory:}
|
label {Memory:}
|
||||||
xywh {360 75 60 25} labelsize 12 align 24
|
xywh {435 76 60 25} labelsize 12 align 24
|
||||||
class Label
|
class Label
|
||||||
}
|
}
|
||||||
Fl_Box memoryLabel_ {
|
Fl_Box memoryLabel_ {
|
||||||
xywh {425 75 50 25} labelsize 12 align 16
|
xywh {500 76 50 25} labelsize 12 align 16
|
||||||
class Label
|
class Label
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Fl_Group {} {open
|
Fl_Group {} {open
|
||||||
xywh {495 5 100 100} box ROUNDED_BOX
|
xywh {570 5 225 100} box ROUNDED_BOX
|
||||||
class RoundedGroup
|
|
||||||
} {
|
|
||||||
Fl_Light_Button {} {
|
|
||||||
label SETUP
|
|
||||||
comment {tag=kTagFirstChangePanel+kPanelSettings}
|
|
||||||
xywh {510 42 70 25}
|
|
||||||
class LightButton
|
|
||||||
}
|
|
||||||
Fl_Light_Button {} {
|
|
||||||
label CC
|
|
||||||
comment {tag=kTagFirstChangePanel+kPanelControls}
|
|
||||||
xywh {510 15 70 25}
|
|
||||||
class LightButton
|
|
||||||
}
|
|
||||||
Fl_Light_Button {} {
|
|
||||||
label INFO
|
|
||||||
comment {tag=kTagFirstChangePanel+kPanelInfo}
|
|
||||||
xywh {510 69 70 25}
|
|
||||||
class LightButton
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Fl_Group {} {open
|
|
||||||
xywh {600 5 195 100} box ROUNDED_BOX
|
|
||||||
class RoundedGroup
|
class RoundedGroup
|
||||||
} {
|
} {
|
||||||
Fl_Dial {} {
|
Fl_Dial {} {
|
||||||
|
|
@ -126,7 +118,7 @@ widget_class mainView {open
|
||||||
}
|
}
|
||||||
Fl_Box {} {
|
Fl_Box {} {
|
||||||
label Center
|
label Center
|
||||||
xywh {610 70 60 25} labelsize 12 hide
|
xywh {610 70 60 5} labelsize 12 hide
|
||||||
class ValueLabel
|
class ValueLabel
|
||||||
}
|
}
|
||||||
Fl_Dial volumeSlider_ {
|
Fl_Dial volumeSlider_ {
|
||||||
|
|
@ -136,83 +128,74 @@ widget_class mainView {open
|
||||||
}
|
}
|
||||||
Fl_Box volumeLabel_ {
|
Fl_Box volumeLabel_ {
|
||||||
label {0.0 dB}
|
label {0.0 dB}
|
||||||
xywh {675 70 60 25} labelsize 12
|
xywh {675 70 60 22} labelsize 12
|
||||||
class ValueLabel
|
class ValueLabel
|
||||||
}
|
}
|
||||||
Fl_Box {} {
|
Fl_Box {} {
|
||||||
xywh {745 20 35 70} box BORDER_BOX
|
xywh {745 20 35 55} box BORDER_BOX
|
||||||
class VMeter
|
class VMeter
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Fl_Group {subPanels_[kPanelGeneral]} {
|
Fl_Group {subPanels_[kPanelGeneral]} {open selected
|
||||||
xywh {5 110 790 285} hide
|
xywh {5 110 791 285}
|
||||||
class LogicalGroup
|
class LogicalGroup
|
||||||
} {
|
} {
|
||||||
Fl_Group {} {open
|
Fl_Group {} {open
|
||||||
xywh {5 110 120 285} box ROUNDED_BOX
|
xywh {5 110 175 280} box ROUNDED_BOX
|
||||||
class RoundedGroup
|
class RoundedGroup
|
||||||
} {
|
} {
|
||||||
Fl_Box {} {
|
Fl_Box {} {
|
||||||
label {Curves:}
|
label {Curves:}
|
||||||
xywh {15 120 60 25} labelsize 12 align 20
|
xywh {20 120 60 25} align 20
|
||||||
class Label
|
class Label
|
||||||
}
|
}
|
||||||
Fl_Box {} {
|
Fl_Box {} {
|
||||||
label {Masters:}
|
label {Masters:}
|
||||||
xywh {15 145 60 25} labelsize 12 align 20
|
xywh {20 145 60 25} align 20
|
||||||
class Label
|
class Label
|
||||||
}
|
}
|
||||||
Fl_Box {} {
|
Fl_Box {} {
|
||||||
label {Groups:}
|
label {Groups:}
|
||||||
xywh {15 170 60 25} labelsize 12 align 20
|
xywh {20 170 60 25} align 20
|
||||||
class Label
|
class Label
|
||||||
}
|
}
|
||||||
Fl_Box {} {
|
Fl_Box {} {
|
||||||
label {Regions:}
|
label {Regions:}
|
||||||
xywh {15 195 60 25} labelsize 12 align 20
|
xywh {20 195 60 25} align 20
|
||||||
class Label
|
class Label
|
||||||
}
|
}
|
||||||
Fl_Box {} {
|
Fl_Box {} {
|
||||||
label {Samples:}
|
label {Samples:}
|
||||||
xywh {15 220 60 25} labelsize 12 align 20
|
xywh {20 220 60 25} align 20
|
||||||
class Label
|
class Label
|
||||||
}
|
}
|
||||||
Fl_Box infoCurvesLabel_ {
|
Fl_Box infoCurvesLabel_ {
|
||||||
label 0
|
label 0
|
||||||
xywh {75 120 40 25} labelsize 12 align 16
|
xywh {120 120 40 25} align 16
|
||||||
class Label
|
class Label
|
||||||
}
|
}
|
||||||
Fl_Box infoMastersLabel_ {
|
Fl_Box infoMastersLabel_ {
|
||||||
label 0
|
label 0
|
||||||
xywh {75 145 40 25} labelsize 12 align 16
|
xywh {120 145 40 25} align 16
|
||||||
class Label
|
class Label
|
||||||
}
|
}
|
||||||
Fl_Box infoGroupsLabel_ {
|
Fl_Box infoGroupsLabel_ {
|
||||||
label 0
|
label 0
|
||||||
xywh {75 170 40 25} labelsize 12 align 16
|
xywh {120 170 40 25} align 16
|
||||||
class Label
|
class Label
|
||||||
}
|
}
|
||||||
Fl_Box infoRegionsLabel_ {
|
Fl_Box infoRegionsLabel_ {
|
||||||
label 0
|
label 0
|
||||||
xywh {75 195 40 25} labelsize 12 align 16
|
xywh {120 195 40 25} align 16
|
||||||
class Label
|
class Label
|
||||||
}
|
}
|
||||||
Fl_Box infoSamplesLabel_ {
|
Fl_Box infoSamplesLabel_ {
|
||||||
label 0
|
label 0
|
||||||
xywh {75 220 40 25} labelsize 12 align 16
|
xywh {120 220 40 25} align 16
|
||||||
class Label
|
class Label
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Fl_Group {} {open
|
|
||||||
xywh {130 110 665 280}
|
|
||||||
class LogicalGroup
|
|
||||||
} {
|
|
||||||
Fl_Box {} {
|
|
||||||
image {../resources/logo_text.png} xywh {260 125 400 250}
|
|
||||||
class SfizzLargePicture
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
Fl_Group {subPanels_[kPanelControls]} {
|
Fl_Group {subPanels_[kPanelControls]} {
|
||||||
xywh {5 110 790 285} hide
|
xywh {5 110 790 285} hide
|
||||||
|
|
@ -229,114 +212,99 @@ widget_class mainView {open
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Fl_Group {subPanels_[kPanelSettings]} {open
|
Fl_Group {subPanels_[kPanelSettings]} {
|
||||||
xywh {5 110 790 285}
|
xywh {5 109 790 286} hide
|
||||||
class LogicalGroup
|
class LogicalGroup
|
||||||
} {
|
} {
|
||||||
Fl_Group {} {
|
Fl_Group {} {
|
||||||
label Engine open selected
|
label Engine open
|
||||||
xywh {260 125 280 110} box ROUNDED_BOX labelsize 12 align 17
|
xywh {260 110 280 110} box ROUNDED_BOX labelsize 12 align 17
|
||||||
class TitleGroup
|
class TitleGroup
|
||||||
} {
|
} {
|
||||||
Fl_Spinner numVoicesSlider_ {
|
Fl_Spinner numVoicesSlider_ {
|
||||||
comment {tag=kTagSetNumVoices}
|
comment {tag=kTagSetNumVoices}
|
||||||
xywh {285 185 60 25} labelsize 12 textsize 12
|
xywh {285 170 60 25} labelsize 12 textsize 12
|
||||||
class ValueMenu
|
class ValueMenu
|
||||||
}
|
}
|
||||||
Fl_Box {} {
|
Fl_Box {} {
|
||||||
label Polyphony
|
label Polyphony
|
||||||
xywh {275 145 80 25} labelsize 12
|
xywh {275 130 80 25} labelsize 12
|
||||||
class ValueLabel
|
class ValueLabel
|
||||||
}
|
}
|
||||||
Fl_Spinner oversamplingSlider_ {
|
Fl_Spinner oversamplingSlider_ {
|
||||||
comment {tag=kTagSetOversampling}
|
comment {tag=kTagSetOversampling}
|
||||||
xywh {370 185 60 25} labelsize 12 textsize 12
|
xywh {370 170 60 25} labelsize 12 textsize 12
|
||||||
class ValueMenu
|
class ValueMenu
|
||||||
}
|
}
|
||||||
Fl_Box {} {
|
Fl_Box {} {
|
||||||
label Oversampling
|
label Oversampling
|
||||||
xywh {360 145 80 25} labelsize 12
|
xywh {360 130 80 25} labelsize 12
|
||||||
class ValueLabel
|
class ValueLabel
|
||||||
}
|
}
|
||||||
Fl_Box {} {
|
Fl_Box {} {
|
||||||
label {Preload size}
|
label {Preload size}
|
||||||
xywh {445 145 80 25} labelsize 12
|
xywh {445 130 80 25} labelsize 12
|
||||||
class ValueLabel
|
class ValueLabel
|
||||||
}
|
}
|
||||||
Fl_Spinner preloadSizeSlider_ {
|
Fl_Spinner preloadSizeSlider_ {
|
||||||
comment {tag=kTagSetPreloadSize}
|
comment {tag=kTagSetPreloadSize}
|
||||||
xywh {455 185 60 25} labelsize 12 textsize 12
|
xywh {455 170 60 25} labelsize 12 textsize 12
|
||||||
class ValueMenu
|
class ValueMenu
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Fl_Group {} {
|
Fl_Group {} {
|
||||||
label Tuning open
|
label Tuning open
|
||||||
xywh {205 260 390 120} box ROUNDED_BOX labelsize 12 align 17
|
xywh {205 268 390 120} box ROUNDED_BOX labelsize 12 align 17
|
||||||
class TitleGroup
|
class TitleGroup
|
||||||
} {
|
} {
|
||||||
Fl_Box {} {
|
Fl_Box {} {
|
||||||
label {Root key}
|
label {Root key}
|
||||||
xywh {330 280 80 25} labelsize 12
|
xywh {330 288 80 25} labelsize 12
|
||||||
class ValueLabel
|
class ValueLabel
|
||||||
}
|
}
|
||||||
Fl_Spinner tuningFrequencySlider_ {
|
Fl_Spinner tuningFrequencySlider_ {
|
||||||
comment {tag=kTagSetTuningFrequency}
|
comment {tag=kTagSetTuningFrequency}
|
||||||
xywh {425 320 60 25} labelsize 12 textsize 12
|
xywh {425 328 60 25} labelsize 12 textsize 12
|
||||||
class ValueMenu
|
class ValueMenu
|
||||||
}
|
}
|
||||||
Fl_Box {} {
|
Fl_Box {} {
|
||||||
label Frequency
|
label Frequency
|
||||||
xywh {415 280 80 25} labelsize 12
|
xywh {415 288 80 25} labelsize 12
|
||||||
class ValueLabel
|
class ValueLabel
|
||||||
}
|
}
|
||||||
Fl_Dial stretchedTuningSlider_ {
|
Fl_Dial stretchedTuningSlider_ {
|
||||||
comment {tag=kTagSetStretchedTuning}
|
comment {tag=kTagSetStretchedTuning}
|
||||||
xywh {515 305 48 48} value 0.5
|
xywh {515 313 48 48} value 0.5
|
||||||
class Knob48
|
class Knob48
|
||||||
}
|
}
|
||||||
Fl_Box {} {
|
Fl_Box {} {
|
||||||
label Stretch
|
label Stretch
|
||||||
xywh {500 280 80 25} labelsize 12
|
xywh {500 288 80 25} labelsize 12
|
||||||
class ValueLabel
|
class ValueLabel
|
||||||
}
|
}
|
||||||
Fl_Box {} {
|
Fl_Box {} {
|
||||||
label {Scala file}
|
label {Scala file}
|
||||||
xywh {225 280 100 25} labelsize 12
|
xywh {225 288 100 25} labelsize 12
|
||||||
class ValueLabel
|
class ValueLabel
|
||||||
}
|
}
|
||||||
Fl_Button scalaFileButton_ {
|
Fl_Button scalaFileButton_ {
|
||||||
label DefaultScale
|
label DefaultScale
|
||||||
comment {tag=kTagLoadScalaFile}
|
comment {tag=kTagLoadScalaFile}
|
||||||
xywh {225 320 100 25} labelsize 12
|
xywh {225 328 100 25} labelsize 12
|
||||||
class ValueButton
|
class ValueButton
|
||||||
}
|
}
|
||||||
Fl_Spinner scalaRootKeySlider_ {
|
Fl_Spinner scalaRootKeySlider_ {
|
||||||
comment {tag=kTagSetScalaRootKey}
|
comment {tag=kTagSetScalaRootKey}
|
||||||
xywh {340 320 35 25} labelsize 12 textsize 12
|
xywh {340 328 35 25} labelsize 12 textsize 12
|
||||||
class ValueMenu
|
class ValueMenu
|
||||||
}
|
}
|
||||||
Fl_Spinner scalaRootOctaveSlider_ {
|
Fl_Spinner scalaRootOctaveSlider_ {
|
||||||
comment {tag=kTagSetScalaRootKey}
|
comment {tag=kTagSetScalaRootKey}
|
||||||
xywh {375 320 30 25} labelsize 12 textsize 12
|
xywh {375 328 30 25} labelsize 12 textsize 12
|
||||||
class ValueMenu
|
class ValueMenu
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Fl_Group {subPanels_[kPanelInfo]} {
|
|
||||||
xywh {5 110 790 285} hide
|
|
||||||
class LogicalGroup
|
|
||||||
} {
|
|
||||||
Fl_Group {} {open
|
|
||||||
xywh {5 110 790 285} box ROUNDED_BOX
|
|
||||||
class RoundedGroup
|
|
||||||
} {
|
|
||||||
Fl_Box {} {
|
|
||||||
label {Informative text goes here}
|
|
||||||
xywh {5 110 790 285} labelsize 40
|
|
||||||
class Label
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Fl_Box {} {
|
Fl_Box {} {
|
||||||
xywh {5 400 790 70}
|
xywh {5 400 790 70}
|
||||||
class Piano
|
class Piano
|
||||||
|
|
|
||||||
BIN
editor/resources/Fonts/ABeeZee-Italic.ttf
Normal file
BIN
editor/resources/Fonts/ABeeZee-Italic.ttf
Normal file
Binary file not shown.
BIN
editor/resources/Fonts/ABeeZee-Regular.ttf
Normal file
BIN
editor/resources/Fonts/ABeeZee-Regular.ttf
Normal file
Binary file not shown.
BIN
editor/resources/logo_full_white.png
Normal file
BIN
editor/resources/logo_full_white.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 4.4 KiB |
|
|
@ -35,7 +35,6 @@ struct Editor::Impl : EditorController::Receiver, IControlListener {
|
||||||
kPanelGeneral,
|
kPanelGeneral,
|
||||||
kPanelControls,
|
kPanelControls,
|
||||||
kPanelSettings,
|
kPanelSettings,
|
||||||
kPanelInfo,
|
|
||||||
kNumPanels,
|
kNumPanels,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -314,12 +313,38 @@ void Editor::Impl::uiReceiveValue(EditId id, const EditValue& v)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
class CHoverButton: public CTextButton {
|
||||||
|
public:
|
||||||
|
CHoverButton(const CRect& size, IControlListener* listener = nullptr, int32_t tag = -1, UTF8StringPtr title = nullptr)
|
||||||
|
: CTextButton(size, listener, tag, title) {}
|
||||||
|
|
||||||
|
void setHoverColor(const CColor& color)
|
||||||
|
{
|
||||||
|
hoverColor = color;
|
||||||
|
}
|
||||||
|
|
||||||
|
CMouseEventResult onMouseEntered (CPoint& where, const CButtonState& buttons) override
|
||||||
|
{
|
||||||
|
backupColor = getTextColor();
|
||||||
|
setTextColor(hoverColor);
|
||||||
|
return CTextButton::onMouseEntered(where, buttons);
|
||||||
|
}
|
||||||
|
|
||||||
|
CMouseEventResult onMouseExited (CPoint& where, const CButtonState& buttons) override
|
||||||
|
{
|
||||||
|
setTextColor(backupColor);
|
||||||
|
return CTextButton::onMouseExited(where, buttons);
|
||||||
|
}
|
||||||
|
private:
|
||||||
|
CColor hoverColor;
|
||||||
|
CColor backupColor;
|
||||||
|
};
|
||||||
|
|
||||||
void Editor::Impl::createFrameContents()
|
void Editor::Impl::createFrameContents()
|
||||||
{
|
{
|
||||||
CViewContainer* mainView;
|
CViewContainer* mainView;
|
||||||
|
|
||||||
SharedPointer<CBitmap> iconWhite = owned(new CBitmap("icon_white.png"));
|
SharedPointer<CBitmap> iconWhite = owned(new CBitmap("logo_full_white.png"));
|
||||||
SharedPointer<CBitmap> knob48 = owned(new CBitmap("knob48.png"));
|
SharedPointer<CBitmap> knob48 = owned(new CBitmap("knob48.png"));
|
||||||
SharedPointer<CBitmap> logoText = owned(new CBitmap("logo_text.png"));
|
SharedPointer<CBitmap> logoText = owned(new CBitmap("logo_text.png"));
|
||||||
|
|
||||||
|
|
@ -332,6 +357,7 @@ void Editor::Impl::createFrameContents()
|
||||||
CColor titleBoxText;
|
CColor titleBoxText;
|
||||||
CColor titleBoxBackground;
|
CColor titleBoxBackground;
|
||||||
CColor icon;
|
CColor icon;
|
||||||
|
CColor iconHighlight;
|
||||||
CColor valueText;
|
CColor valueText;
|
||||||
CColor valueBackground;
|
CColor valueBackground;
|
||||||
};
|
};
|
||||||
|
|
@ -342,6 +368,7 @@ void Editor::Impl::createFrameContents()
|
||||||
lightTheme.titleBoxText = { 0xff, 0xff, 0xff };
|
lightTheme.titleBoxText = { 0xff, 0xff, 0xff };
|
||||||
lightTheme.titleBoxBackground = { 0x2e, 0x34, 0x36 };
|
lightTheme.titleBoxBackground = { 0x2e, 0x34, 0x36 };
|
||||||
lightTheme.icon = lightTheme.text;
|
lightTheme.icon = lightTheme.text;
|
||||||
|
lightTheme.iconHighlight = { 0xa8, 0x62, 0x34 };
|
||||||
lightTheme.valueText = { 0xff, 0xff, 0xff };
|
lightTheme.valueText = { 0xff, 0xff, 0xff };
|
||||||
lightTheme.valueBackground = { 0x2e, 0x34, 0x36 };
|
lightTheme.valueBackground = { 0x2e, 0x34, 0x36 };
|
||||||
Theme darkTheme;
|
Theme darkTheme;
|
||||||
|
|
@ -350,6 +377,7 @@ void Editor::Impl::createFrameContents()
|
||||||
darkTheme.titleBoxText = { 0x00, 0x00, 0x00 };
|
darkTheme.titleBoxText = { 0x00, 0x00, 0x00 };
|
||||||
darkTheme.titleBoxBackground = { 0xba, 0xbd, 0xb6 };
|
darkTheme.titleBoxBackground = { 0xba, 0xbd, 0xb6 };
|
||||||
darkTheme.icon = darkTheme.text;
|
darkTheme.icon = darkTheme.text;
|
||||||
|
darkTheme.iconHighlight = { 0xa8, 0x62, 0x34 };
|
||||||
darkTheme.valueText = { 0x2e, 0x34, 0x36 };
|
darkTheme.valueText = { 0x2e, 0x34, 0x36 };
|
||||||
darkTheme.valueBackground = { 0xff, 0xff, 0xff };
|
darkTheme.valueBackground = { 0xff, 0xff, 0xff };
|
||||||
Theme& defaultTheme = lightTheme;
|
Theme& defaultTheme = lightTheme;
|
||||||
|
|
@ -363,18 +391,19 @@ void Editor::Impl::createFrameContents()
|
||||||
typedef CKickButton SfizzMainButton;
|
typedef CKickButton SfizzMainButton;
|
||||||
typedef CTextLabel Label;
|
typedef CTextLabel Label;
|
||||||
typedef CViewContainer HLine;
|
typedef CViewContainer HLine;
|
||||||
typedef CTextButton LightButton;
|
|
||||||
typedef CAnimKnob Knob48;
|
typedef CAnimKnob Knob48;
|
||||||
typedef CTextLabel ValueLabel;
|
typedef CTextLabel ValueLabel;
|
||||||
typedef CViewContainer VMeter;
|
typedef CViewContainer VMeter;
|
||||||
typedef CView SfizzLargePicture;
|
|
||||||
typedef SValueMenu ValueMenu;
|
typedef SValueMenu ValueMenu;
|
||||||
#if 0
|
#if 0
|
||||||
typedef CTextButton Button;
|
typedef CTextButton Button;
|
||||||
#endif
|
#endif
|
||||||
typedef CTextButton ValueButton;
|
typedef CTextButton ValueButton;
|
||||||
typedef CTextButton LoadFileButton;
|
typedef CHoverButton LoadFileButton;
|
||||||
typedef CTextButton EditFileButton;
|
typedef CHoverButton CCButton;
|
||||||
|
typedef CHoverButton HomeButton;
|
||||||
|
typedef CHoverButton SettingsButton;
|
||||||
|
typedef CHoverButton EditFileButton;
|
||||||
typedef SPiano Piano;
|
typedef SPiano Piano;
|
||||||
|
|
||||||
auto createLogicalGroup = [](const CRect& bounds, int, const char*, CHoriTxtAlign, int) {
|
auto createLogicalGroup = [](const CRect& bounds, int, const char*, CHoriTxtAlign, int) {
|
||||||
|
|
@ -394,7 +423,7 @@ void Editor::Impl::createFrameContents()
|
||||||
box->setBackgroundColor(theme->boxBackground);
|
box->setBackgroundColor(theme->boxBackground);
|
||||||
box->setTitleFontColor(theme->titleBoxText);
|
box->setTitleFontColor(theme->titleBoxText);
|
||||||
box->setTitleBackgroundColor(theme->titleBoxBackground);
|
box->setTitleBackgroundColor(theme->titleBoxBackground);
|
||||||
auto font = owned(new CFontDesc(*box->getTitleFont()));
|
auto font = owned(new CFontDesc("ABeeZee", fontsize));
|
||||||
font->setSize(fontsize);
|
font->setSize(fontsize);
|
||||||
box->setTitleFont(font);
|
box->setTitleFont(font);
|
||||||
return box;
|
return box;
|
||||||
|
|
@ -408,7 +437,7 @@ void Editor::Impl::createFrameContents()
|
||||||
lbl->setBackColor(CColor(0x00, 0x00, 0x00, 0x00));
|
lbl->setBackColor(CColor(0x00, 0x00, 0x00, 0x00));
|
||||||
lbl->setFontColor(theme->text);
|
lbl->setFontColor(theme->text);
|
||||||
lbl->setHoriAlign(align);
|
lbl->setHoriAlign(align);
|
||||||
auto font = owned(new CFontDesc(*lbl->getFont()));
|
auto font = owned(new CFontDesc("ABeeZee", fontsize));
|
||||||
font->setSize(fontsize);
|
font->setSize(fontsize);
|
||||||
lbl->setFont(font);
|
lbl->setFont(font);
|
||||||
return lbl;
|
return lbl;
|
||||||
|
|
@ -420,11 +449,6 @@ void Editor::Impl::createFrameContents()
|
||||||
hline->setBackgroundColor(CColor(0xff, 0xff, 0xff, 0xff));
|
hline->setBackgroundColor(CColor(0xff, 0xff, 0xff, 0xff));
|
||||||
return hline;
|
return hline;
|
||||||
};
|
};
|
||||||
auto createLightButton = [this](const CRect& bounds, int tag, const char* label, CHoriTxtAlign align, int) {
|
|
||||||
CTextButton* button = new CTextButton(bounds, this, tag, label);
|
|
||||||
button->setTextAlignment(align);
|
|
||||||
return button;
|
|
||||||
};
|
|
||||||
auto createKnob48 = [this, &knob48](const CRect& bounds, int tag, const char*, CHoriTxtAlign, int) {
|
auto createKnob48 = [this, &knob48](const CRect& bounds, int tag, const char*, CHoriTxtAlign, int) {
|
||||||
return new CAnimKnob(bounds, this, tag, 31, 48, knob48);
|
return new CAnimKnob(bounds, this, tag, 31, 48, knob48);
|
||||||
};
|
};
|
||||||
|
|
@ -434,7 +458,7 @@ void Editor::Impl::createFrameContents()
|
||||||
lbl->setBackColor(CColor(0x00, 0x00, 0x00, 0x00));
|
lbl->setBackColor(CColor(0x00, 0x00, 0x00, 0x00));
|
||||||
lbl->setFontColor(theme->text);
|
lbl->setFontColor(theme->text);
|
||||||
lbl->setHoriAlign(align);
|
lbl->setHoriAlign(align);
|
||||||
auto font = owned(new CFontDesc(*lbl->getFont()));
|
auto font = owned(new CFontDesc("ABeeZee", fontsize));
|
||||||
font->setSize(fontsize);
|
font->setSize(fontsize);
|
||||||
lbl->setFont(font);
|
lbl->setFont(font);
|
||||||
return lbl;
|
return lbl;
|
||||||
|
|
@ -445,11 +469,6 @@ void Editor::Impl::createFrameContents()
|
||||||
container->setBackgroundColor(CColor(0x00, 0x00, 0x00, 0x00));
|
container->setBackgroundColor(CColor(0x00, 0x00, 0x00, 0x00));
|
||||||
return container;
|
return container;
|
||||||
};
|
};
|
||||||
auto createSfizzLargePicture = [&logoText](const CRect& bounds, int, const char*, CHoriTxtAlign, int) {
|
|
||||||
CView* picture = new CView(bounds);
|
|
||||||
picture->setBackground(logoText);
|
|
||||||
return picture;
|
|
||||||
};
|
|
||||||
#if 0
|
#if 0
|
||||||
auto createButton = [this](const CRect& bounds, int tag, const char* label, CHoriTxtAlign align, int fontsize) {
|
auto createButton = [this](const CRect& bounds, int tag, const char* label, CHoriTxtAlign align, int fontsize) {
|
||||||
CTextButton* button = new CTextButton(bounds, this, tag, label);
|
CTextButton* button = new CTextButton(bounds, this, tag, label);
|
||||||
|
|
@ -462,7 +481,7 @@ void Editor::Impl::createFrameContents()
|
||||||
#endif
|
#endif
|
||||||
auto createValueButton = [this, &theme](const CRect& bounds, int tag, const char* label, CHoriTxtAlign align, int fontsize) {
|
auto createValueButton = [this, &theme](const CRect& bounds, int tag, const char* label, CHoriTxtAlign align, int fontsize) {
|
||||||
CTextButton* button = new CTextButton(bounds, this, tag, label);
|
CTextButton* button = new CTextButton(bounds, this, tag, label);
|
||||||
auto font = owned(new CFontDesc(*button->getFont()));
|
auto font = owned(new CFontDesc("ABeeZee", fontsize));
|
||||||
font->setSize(fontsize);
|
font->setSize(fontsize);
|
||||||
button->setFont(font);
|
button->setFont(font);
|
||||||
button->setTextAlignment(align);
|
button->setTextAlignment(align);
|
||||||
|
|
@ -476,7 +495,7 @@ void Editor::Impl::createFrameContents()
|
||||||
auto createValueMenu = [this, &theme](const CRect& bounds, int tag, const char*, CHoriTxtAlign align, int fontsize) {
|
auto createValueMenu = [this, &theme](const CRect& bounds, int tag, const char*, CHoriTxtAlign align, int fontsize) {
|
||||||
SValueMenu* vm = new SValueMenu(bounds, this, tag);
|
SValueMenu* vm = new SValueMenu(bounds, this, tag);
|
||||||
vm->setHoriAlign(align);
|
vm->setHoriAlign(align);
|
||||||
auto font = owned(new CFontDesc(*vm->getFont()));
|
auto font = owned(new CFontDesc("ABeeZee", fontsize));
|
||||||
font->setSize(fontsize);
|
font->setSize(fontsize);
|
||||||
vm->setFont(font);
|
vm->setFont(font);
|
||||||
vm->setFontColor(theme->valueText);
|
vm->setFontColor(theme->valueText);
|
||||||
|
|
@ -487,19 +506,30 @@ void Editor::Impl::createFrameContents()
|
||||||
return vm;
|
return vm;
|
||||||
};
|
};
|
||||||
auto createGlyphButton = [this, &theme](UTF8StringPtr glyph, const CRect& bounds, int tag, int fontsize) {
|
auto createGlyphButton = [this, &theme](UTF8StringPtr glyph, const CRect& bounds, int tag, int fontsize) {
|
||||||
CTextButton* btn = new CTextButton(bounds, this, tag, glyph);
|
CHoverButton* btn = new CHoverButton(bounds, this, tag, glyph);
|
||||||
btn->setFont(new CFontDesc("Fluent System Regular W20", fontsize));
|
btn->setFont(new CFontDesc("Fluent System Regular W20", fontsize));
|
||||||
btn->setTextColor(theme->icon);
|
btn->setTextColor(theme->icon);
|
||||||
|
btn->setHoverColor(theme->iconHighlight);
|
||||||
btn->setFrameColor(CColor(0x00, 0x00, 0x00, 0x00));
|
btn->setFrameColor(CColor(0x00, 0x00, 0x00, 0x00));
|
||||||
btn->setGradient(nullptr);
|
btn->setGradient(nullptr);
|
||||||
btn->setGradientHighlighted(nullptr);
|
btn->setGradientHighlighted(nullptr);
|
||||||
return btn;
|
return btn;
|
||||||
};
|
};
|
||||||
auto createLoadFileButton = [&createGlyphButton](const CRect& bounds, int tag, const char*, CHoriTxtAlign, int fontsize) {
|
auto createHomeButton = [&createGlyphButton](const CRect& bounds, int tag, const char*, CHoriTxtAlign, int fontsize) {
|
||||||
return createGlyphButton(u8"\ue142", bounds, tag, fontsize);
|
return createGlyphButton(u8"\ue1d6", bounds, tag, fontsize);
|
||||||
|
};
|
||||||
|
auto createCCButton = [&createGlyphButton](const CRect& bounds, int tag, const char*, CHoriTxtAlign, int fontsize) {
|
||||||
|
// return createGlyphButton(u8"\ue240", bounds, tag, fontsize);
|
||||||
|
return createGlyphButton(u8"\ue140", bounds, tag, fontsize);
|
||||||
|
};
|
||||||
|
auto createSettingsButton = [&createGlyphButton](const CRect& bounds, int tag, const char*, CHoriTxtAlign, int fontsize) {
|
||||||
|
return createGlyphButton(u8"\ue2e4", bounds, tag, fontsize);
|
||||||
};
|
};
|
||||||
auto createEditFileButton = [&createGlyphButton](const CRect& bounds, int tag, const char*, CHoriTxtAlign, int fontsize) {
|
auto createEditFileButton = [&createGlyphButton](const CRect& bounds, int tag, const char*, CHoriTxtAlign, int fontsize) {
|
||||||
return createGlyphButton(u8"\ue148", bounds, tag, fontsize);
|
return createGlyphButton(u8"\ue142", bounds, tag, fontsize);
|
||||||
|
};
|
||||||
|
auto createLoadFileButton = [&createGlyphButton](const CRect& bounds, int tag, const char*, CHoriTxtAlign, int fontsize) {
|
||||||
|
return createGlyphButton(u8"\ue1a3", bounds, tag, fontsize);
|
||||||
};
|
};
|
||||||
auto createPiano = [](const CRect& bounds, int, const char*, CHoriTxtAlign, int) {
|
auto createPiano = [](const CRect& bounds, int, const char*, CHoriTxtAlign, int) {
|
||||||
SPiano* piano = new SPiano(bounds);
|
SPiano* piano = new SPiano(bounds);
|
||||||
|
|
|
||||||
|
|
@ -408,6 +408,9 @@ CMouseEventResult SValueMenu::onMouseDown(CPoint& where, const CButtonState& but
|
||||||
menu->addEntry(item);
|
menu->addEntry(item);
|
||||||
item->remember(); // above call does not increment refcount
|
item->remember(); // above call does not increment refcount
|
||||||
}
|
}
|
||||||
|
menu->setFont(self->getFont());
|
||||||
|
menu->setFontColor(self->getFontColor());
|
||||||
|
menu->setBackColor(self->getBackColor());
|
||||||
menu->popup(frame, frameWhere + CPoint(0.0, 1.0));
|
menu->popup(frame, frameWhere + CPoint(0.0, 1.0));
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
|
||||||
|
|
@ -4,164 +4,150 @@ mainView = view__0;
|
||||||
enterTheme(darkTheme);
|
enterTheme(darkTheme);
|
||||||
LogicalGroup* const view__1 = createLogicalGroup(CRect(0, 0, 800, 110), -1, "", kCenterText, 14);
|
LogicalGroup* const view__1 = createLogicalGroup(CRect(0, 0, 800, 110), -1, "", kCenterText, 14);
|
||||||
view__0->addView(view__1);
|
view__0->addView(view__1);
|
||||||
RoundedGroup* const view__2 = createRoundedGroup(CRect(5, 4, 105, 105), -1, "", kCenterText, 14);
|
RoundedGroup* const view__2 = createRoundedGroup(CRect(5, 4, 180, 105), -1, "", kCenterText, 14);
|
||||||
view__1->addView(view__2);
|
view__1->addView(view__2);
|
||||||
SfizzMainButton* const view__3 = createSfizzMainButton(CRect(2, 2, 98, 98), kTagFirstChangePanel+kPanelGeneral, "", kCenterText, 14);
|
SfizzMainButton* const view__3 = createSfizzMainButton(CRect(5, 7, 170, 70), kTagFirstChangePanel+kPanelGeneral, "", kCenterText, 14);
|
||||||
view__2->addView(view__3);
|
view__2->addView(view__3);
|
||||||
RoundedGroup* const view__4 = createRoundedGroup(CRect(110, 5, 490, 105), -1, "", kCenterText, 14);
|
HomeButton* const view__4 = createHomeButton(CRect(50, 71, 75, 96), kTagFirstChangePanel+kPanelGeneral, "", kCenterText, 24);
|
||||||
view__1->addView(view__4);
|
view__2->addView(view__4);
|
||||||
Label* const view__5 = createLabel(CRect(15, 10, 55, 35), -1, "File:", kCenterText, 16);
|
CCButton* const view__5 = createCCButton(CRect(75, 71, 100, 96), kTagFirstChangePanel+kPanelControls, "", kCenterText, 24);
|
||||||
view__4->addView(view__5);
|
view__2->addView(view__5);
|
||||||
Label* const view__6 = createLabel(CRect(15, 40, 55, 65), -1, "KS:", kCenterText, 16);
|
SettingsButton* const view__6 = createSettingsButton(CRect(100, 71, 125, 96), kTagFirstChangePanel+kPanelSettings, "", kCenterText, 24);
|
||||||
view__4->addView(view__6);
|
view__2->addView(view__6);
|
||||||
HLine* const view__7 = createHLine(CRect(10, 35, 365, 40), -1, "", kCenterText, 14);
|
RoundedGroup* const view__7 = createRoundedGroup(CRect(185, 5, 565, 105), -1, "", kCenterText, 14);
|
||||||
view__4->addView(view__7);
|
view__1->addView(view__7);
|
||||||
HLine* const view__8 = createHLine(CRect(10, 65, 365, 70), -1, "", kCenterText, 14);
|
Label* const view__8 = createLabel(CRect(15, 8, 55, 38), -1, "File:", kCenterText, 16);
|
||||||
view__4->addView(view__8);
|
view__7->addView(view__8);
|
||||||
Label* const view__9 = createLabel(CRect(80, 10, 310, 35), -1, "DefaultInstrument.sfz", kCenterText, 20);
|
Label* const view__9 = createLabel(CRect(15, 40, 55, 70), -1, "KS:", kCenterText, 16);
|
||||||
sfzFileLabel_ = view__9;
|
view__7->addView(view__9);
|
||||||
view__4->addView(view__9);
|
HLine* const view__10 = createHLine(CRect(10, 36, 370, 41), -1, "", kCenterText, 14);
|
||||||
Label* const view__10 = createLabel(CRect(80, 40, 310, 65), -1, "Key switch", kCenterText, 20);
|
view__7->addView(view__10);
|
||||||
view__4->addView(view__10);
|
HLine* const view__11 = createHLine(CRect(10, 68, 370, 73), -1, "", kCenterText, 14);
|
||||||
Label* const view__11 = createLabel(CRect(10, 70, 70, 95), -1, "Voices:", kRightText, 12);
|
view__7->addView(view__11);
|
||||||
view__4->addView(view__11);
|
Label* const view__12 = createLabel(CRect(80, 7, 310, 37), -1, "DefaultInstrument.sfz", kCenterText, 20);
|
||||||
LoadFileButton* const view__12 = createLoadFileButton(CRect(315, 10, 340, 35), kTagLoadSfzFile, "", kCenterText, 24);
|
sfzFileLabel_ = view__12;
|
||||||
view__4->addView(view__12);
|
view__7->addView(view__12);
|
||||||
EditFileButton* const view__13 = createEditFileButton(CRect(340, 10, 365, 35), kTagEditSfzFile, "", kCenterText, 24);
|
Label* const view__13 = createLabel(CRect(80, 39, 310, 69), -1, "Key switch", kCenterText, 20);
|
||||||
view__4->addView(view__13);
|
view__7->addView(view__13);
|
||||||
Label* const view__14 = createLabel(CRect(75, 70, 125, 95), -1, "", kCenterText, 12);
|
Label* const view__14 = createLabel(CRect(10, 71, 70, 96), -1, "Voices:", kRightText, 12);
|
||||||
infoVoicesLabel_ = view__14;
|
view__7->addView(view__14);
|
||||||
view__4->addView(view__14);
|
LoadFileButton* const view__15 = createLoadFileButton(CRect(315, 9, 340, 34), kTagLoadSfzFile, "", kCenterText, 24);
|
||||||
Label* const view__15 = createLabel(CRect(130, 70, 190, 95), -1, "Max:", kRightText, 12);
|
view__7->addView(view__15);
|
||||||
view__4->addView(view__15);
|
EditFileButton* const view__16 = createEditFileButton(CRect(340, 9, 365, 34), kTagEditSfzFile, "", kCenterText, 24);
|
||||||
Label* const view__16 = createLabel(CRect(195, 70, 245, 95), -1, "", kCenterText, 12);
|
view__7->addView(view__16);
|
||||||
numVoicesLabel_ = view__16;
|
Label* const view__17 = createLabel(CRect(75, 71, 125, 96), -1, "", kCenterText, 12);
|
||||||
view__4->addView(view__16);
|
infoVoicesLabel_ = view__17;
|
||||||
Label* const view__17 = createLabel(CRect(250, 70, 310, 95), -1, "Memory:", kRightText, 12);
|
view__7->addView(view__17);
|
||||||
view__4->addView(view__17);
|
Label* const view__18 = createLabel(CRect(130, 71, 190, 96), -1, "Max:", kRightText, 12);
|
||||||
Label* const view__18 = createLabel(CRect(315, 70, 365, 95), -1, "", kCenterText, 12);
|
view__7->addView(view__18);
|
||||||
memoryLabel_ = view__18;
|
Label* const view__19 = createLabel(CRect(195, 71, 245, 96), -1, "", kCenterText, 12);
|
||||||
view__4->addView(view__18);
|
numVoicesLabel_ = view__19;
|
||||||
RoundedGroup* const view__19 = createRoundedGroup(CRect(495, 5, 595, 105), -1, "", kCenterText, 14);
|
view__7->addView(view__19);
|
||||||
view__1->addView(view__19);
|
Label* const view__20 = createLabel(CRect(250, 71, 310, 96), -1, "Memory:", kRightText, 12);
|
||||||
LightButton* const view__20 = createLightButton(CRect(15, 37, 85, 62), kTagFirstChangePanel+kPanelSettings, "SETUP", kCenterText, 14);
|
view__7->addView(view__20);
|
||||||
view__19->addView(view__20);
|
Label* const view__21 = createLabel(CRect(315, 71, 365, 96), -1, "", kCenterText, 12);
|
||||||
LightButton* const view__21 = createLightButton(CRect(15, 10, 85, 35), kTagFirstChangePanel+kPanelControls, "CC", kCenterText, 14);
|
memoryLabel_ = view__21;
|
||||||
view__19->addView(view__21);
|
view__7->addView(view__21);
|
||||||
LightButton* const view__22 = createLightButton(CRect(15, 64, 85, 89), kTagFirstChangePanel+kPanelInfo, "INFO", kCenterText, 14);
|
RoundedGroup* const view__22 = createRoundedGroup(CRect(570, 5, 795, 105), -1, "", kCenterText, 14);
|
||||||
view__19->addView(view__22);
|
view__1->addView(view__22);
|
||||||
RoundedGroup* const view__23 = createRoundedGroup(CRect(600, 5, 795, 105), -1, "", kCenterText, 14);
|
Knob48* const view__23 = createKnob48(CRect(45, 15, 93, 63), -1, "", kCenterText, 14);
|
||||||
view__1->addView(view__23);
|
view__22->addView(view__23);
|
||||||
Knob48* const view__24 = createKnob48(CRect(15, 15, 63, 63), -1, "", kCenterText, 14);
|
view__23->setVisible(false);
|
||||||
view__23->addView(view__24);
|
ValueLabel* const view__24 = createValueLabel(CRect(40, 65, 100, 70), -1, "Center", kCenterText, 12);
|
||||||
|
view__22->addView(view__24);
|
||||||
view__24->setVisible(false);
|
view__24->setVisible(false);
|
||||||
ValueLabel* const view__25 = createValueLabel(CRect(10, 65, 70, 90), -1, "Center", kCenterText, 12);
|
Knob48* const view__25 = createKnob48(CRect(110, 15, 158, 63), kTagSetVolume, "", kCenterText, 14);
|
||||||
view__23->addView(view__25);
|
volumeSlider_ = view__25;
|
||||||
view__25->setVisible(false);
|
view__22->addView(view__25);
|
||||||
Knob48* const view__26 = createKnob48(CRect(80, 15, 128, 63), kTagSetVolume, "", kCenterText, 14);
|
ValueLabel* const view__26 = createValueLabel(CRect(105, 65, 165, 87), -1, "0.0 dB", kCenterText, 12);
|
||||||
volumeSlider_ = view__26;
|
volumeLabel_ = view__26;
|
||||||
view__23->addView(view__26);
|
view__22->addView(view__26);
|
||||||
ValueLabel* const view__27 = createValueLabel(CRect(75, 65, 135, 90), -1, "0.0 dB", kCenterText, 12);
|
VMeter* const view__27 = createVMeter(CRect(175, 15, 210, 70), -1, "", kCenterText, 14);
|
||||||
volumeLabel_ = view__27;
|
view__22->addView(view__27);
|
||||||
view__23->addView(view__27);
|
|
||||||
VMeter* const view__28 = createVMeter(CRect(145, 15, 180, 85), -1, "", kCenterText, 14);
|
|
||||||
view__23->addView(view__28);
|
|
||||||
enterTheme(defaultTheme);
|
enterTheme(defaultTheme);
|
||||||
LogicalGroup* const view__29 = createLogicalGroup(CRect(5, 110, 795, 395), -1, "", kCenterText, 14);
|
LogicalGroup* const view__28 = createLogicalGroup(CRect(5, 110, 796, 395), -1, "", kCenterText, 14);
|
||||||
subPanels_[kPanelGeneral] = view__29;
|
subPanels_[kPanelGeneral] = view__28;
|
||||||
view__0->addView(view__29);
|
view__0->addView(view__28);
|
||||||
view__29->setVisible(false);
|
RoundedGroup* const view__29 = createRoundedGroup(CRect(0, 0, 175, 280), -1, "", kCenterText, 14);
|
||||||
RoundedGroup* const view__30 = createRoundedGroup(CRect(0, 0, 120, 285), -1, "", kCenterText, 14);
|
view__28->addView(view__29);
|
||||||
|
Label* const view__30 = createLabel(CRect(15, 10, 75, 35), -1, "Curves:", kLeftText, 14);
|
||||||
view__29->addView(view__30);
|
view__29->addView(view__30);
|
||||||
Label* const view__31 = createLabel(CRect(10, 10, 70, 35), -1, "Curves:", kLeftText, 12);
|
Label* const view__31 = createLabel(CRect(15, 35, 75, 60), -1, "Masters:", kLeftText, 14);
|
||||||
view__30->addView(view__31);
|
view__29->addView(view__31);
|
||||||
Label* const view__32 = createLabel(CRect(10, 35, 70, 60), -1, "Masters:", kLeftText, 12);
|
Label* const view__32 = createLabel(CRect(15, 60, 75, 85), -1, "Groups:", kLeftText, 14);
|
||||||
view__30->addView(view__32);
|
view__29->addView(view__32);
|
||||||
Label* const view__33 = createLabel(CRect(10, 60, 70, 85), -1, "Groups:", kLeftText, 12);
|
Label* const view__33 = createLabel(CRect(15, 85, 75, 110), -1, "Regions:", kLeftText, 14);
|
||||||
view__30->addView(view__33);
|
view__29->addView(view__33);
|
||||||
Label* const view__34 = createLabel(CRect(10, 85, 70, 110), -1, "Regions:", kLeftText, 12);
|
Label* const view__34 = createLabel(CRect(15, 110, 75, 135), -1, "Samples:", kLeftText, 14);
|
||||||
view__30->addView(view__34);
|
view__29->addView(view__34);
|
||||||
Label* const view__35 = createLabel(CRect(10, 110, 70, 135), -1, "Samples:", kLeftText, 12);
|
Label* const view__35 = createLabel(CRect(115, 10, 155, 35), -1, "0", kCenterText, 14);
|
||||||
view__30->addView(view__35);
|
infoCurvesLabel_ = view__35;
|
||||||
Label* const view__36 = createLabel(CRect(70, 10, 110, 35), -1, "0", kCenterText, 12);
|
view__29->addView(view__35);
|
||||||
infoCurvesLabel_ = view__36;
|
Label* const view__36 = createLabel(CRect(115, 35, 155, 60), -1, "0", kCenterText, 14);
|
||||||
view__30->addView(view__36);
|
infoMastersLabel_ = view__36;
|
||||||
Label* const view__37 = createLabel(CRect(70, 35, 110, 60), -1, "0", kCenterText, 12);
|
view__29->addView(view__36);
|
||||||
infoMastersLabel_ = view__37;
|
Label* const view__37 = createLabel(CRect(115, 60, 155, 85), -1, "0", kCenterText, 14);
|
||||||
view__30->addView(view__37);
|
infoGroupsLabel_ = view__37;
|
||||||
Label* const view__38 = createLabel(CRect(70, 60, 110, 85), -1, "0", kCenterText, 12);
|
view__29->addView(view__37);
|
||||||
infoGroupsLabel_ = view__38;
|
Label* const view__38 = createLabel(CRect(115, 85, 155, 110), -1, "0", kCenterText, 14);
|
||||||
view__30->addView(view__38);
|
infoRegionsLabel_ = view__38;
|
||||||
Label* const view__39 = createLabel(CRect(70, 85, 110, 110), -1, "0", kCenterText, 12);
|
view__29->addView(view__38);
|
||||||
infoRegionsLabel_ = view__39;
|
Label* const view__39 = createLabel(CRect(115, 110, 155, 135), -1, "0", kCenterText, 14);
|
||||||
view__30->addView(view__39);
|
infoSamplesLabel_ = view__39;
|
||||||
Label* const view__40 = createLabel(CRect(70, 110, 110, 135), -1, "0", kCenterText, 12);
|
view__29->addView(view__39);
|
||||||
infoSamplesLabel_ = view__40;
|
LogicalGroup* const view__40 = createLogicalGroup(CRect(5, 110, 795, 395), -1, "", kCenterText, 14);
|
||||||
view__30->addView(view__40);
|
subPanels_[kPanelControls] = view__40;
|
||||||
LogicalGroup* const view__41 = createLogicalGroup(CRect(125, 0, 790, 280), -1, "", kCenterText, 14);
|
view__0->addView(view__40);
|
||||||
view__29->addView(view__41);
|
view__40->setVisible(false);
|
||||||
SfizzLargePicture* const view__42 = createSfizzLargePicture(CRect(130, 15, 530, 265), -1, "", kCenterText, 14);
|
RoundedGroup* const view__41 = createRoundedGroup(CRect(0, 0, 790, 285), -1, "", kCenterText, 14);
|
||||||
|
view__40->addView(view__41);
|
||||||
|
Label* const view__42 = createLabel(CRect(0, 0, 790, 285), -1, "Controls not available", kCenterText, 40);
|
||||||
view__41->addView(view__42);
|
view__41->addView(view__42);
|
||||||
LogicalGroup* const view__43 = createLogicalGroup(CRect(5, 110, 795, 395), -1, "", kCenterText, 14);
|
LogicalGroup* const view__43 = createLogicalGroup(CRect(5, 109, 795, 395), -1, "", kCenterText, 14);
|
||||||
subPanels_[kPanelControls] = view__43;
|
subPanels_[kPanelSettings] = view__43;
|
||||||
view__0->addView(view__43);
|
view__0->addView(view__43);
|
||||||
view__43->setVisible(false);
|
view__43->setVisible(false);
|
||||||
RoundedGroup* const view__44 = createRoundedGroup(CRect(0, 0, 790, 285), -1, "", kCenterText, 14);
|
TitleGroup* const view__44 = createTitleGroup(CRect(255, 1, 535, 111), -1, "Engine", kCenterText, 12);
|
||||||
view__43->addView(view__44);
|
view__43->addView(view__44);
|
||||||
Label* const view__45 = createLabel(CRect(0, 0, 790, 285), -1, "Controls not available", kCenterText, 40);
|
ValueMenu* const view__45 = createValueMenu(CRect(25, 60, 85, 85), kTagSetNumVoices, "", kCenterText, 12);
|
||||||
|
numVoicesSlider_ = view__45;
|
||||||
view__44->addView(view__45);
|
view__44->addView(view__45);
|
||||||
LogicalGroup* const view__46 = createLogicalGroup(CRect(5, 110, 795, 395), -1, "", kCenterText, 14);
|
ValueLabel* const view__46 = createValueLabel(CRect(15, 20, 95, 45), -1, "Polyphony", kCenterText, 12);
|
||||||
subPanels_[kPanelSettings] = view__46;
|
view__44->addView(view__46);
|
||||||
view__0->addView(view__46);
|
ValueMenu* const view__47 = createValueMenu(CRect(110, 60, 170, 85), kTagSetOversampling, "", kCenterText, 12);
|
||||||
TitleGroup* const view__47 = createTitleGroup(CRect(255, 15, 535, 125), -1, "Engine", kCenterText, 12);
|
oversamplingSlider_ = view__47;
|
||||||
view__46->addView(view__47);
|
view__44->addView(view__47);
|
||||||
ValueMenu* const view__48 = createValueMenu(CRect(25, 60, 85, 85), kTagSetNumVoices, "", kCenterText, 12);
|
ValueLabel* const view__48 = createValueLabel(CRect(100, 20, 180, 45), -1, "Oversampling", kCenterText, 12);
|
||||||
numVoicesSlider_ = view__48;
|
view__44->addView(view__48);
|
||||||
view__47->addView(view__48);
|
ValueLabel* const view__49 = createValueLabel(CRect(185, 20, 265, 45), -1, "Preload size", kCenterText, 12);
|
||||||
ValueLabel* const view__49 = createValueLabel(CRect(15, 20, 95, 45), -1, "Polyphony", kCenterText, 12);
|
view__44->addView(view__49);
|
||||||
view__47->addView(view__49);
|
ValueMenu* const view__50 = createValueMenu(CRect(195, 60, 255, 85), kTagSetPreloadSize, "", kCenterText, 12);
|
||||||
ValueMenu* const view__50 = createValueMenu(CRect(110, 60, 170, 85), kTagSetOversampling, "", kCenterText, 12);
|
preloadSizeSlider_ = view__50;
|
||||||
oversamplingSlider_ = view__50;
|
view__44->addView(view__50);
|
||||||
view__47->addView(view__50);
|
TitleGroup* const view__51 = createTitleGroup(CRect(200, 159, 590, 279), -1, "Tuning", kCenterText, 12);
|
||||||
ValueLabel* const view__51 = createValueLabel(CRect(100, 20, 180, 45), -1, "Oversampling", kCenterText, 12);
|
view__43->addView(view__51);
|
||||||
view__47->addView(view__51);
|
ValueLabel* const view__52 = createValueLabel(CRect(125, 20, 205, 45), -1, "Root key", kCenterText, 12);
|
||||||
ValueLabel* const view__52 = createValueLabel(CRect(185, 20, 265, 45), -1, "Preload size", kCenterText, 12);
|
view__51->addView(view__52);
|
||||||
view__47->addView(view__52);
|
ValueMenu* const view__53 = createValueMenu(CRect(220, 60, 280, 85), kTagSetTuningFrequency, "", kCenterText, 12);
|
||||||
ValueMenu* const view__53 = createValueMenu(CRect(195, 60, 255, 85), kTagSetPreloadSize, "", kCenterText, 12);
|
tuningFrequencySlider_ = view__53;
|
||||||
preloadSizeSlider_ = view__53;
|
view__51->addView(view__53);
|
||||||
view__47->addView(view__53);
|
ValueLabel* const view__54 = createValueLabel(CRect(210, 20, 290, 45), -1, "Frequency", kCenterText, 12);
|
||||||
TitleGroup* const view__54 = createTitleGroup(CRect(200, 150, 590, 270), -1, "Tuning", kCenterText, 12);
|
view__51->addView(view__54);
|
||||||
view__46->addView(view__54);
|
Knob48* const view__55 = createKnob48(CRect(310, 45, 358, 93), kTagSetStretchedTuning, "", kCenterText, 14);
|
||||||
ValueLabel* const view__55 = createValueLabel(CRect(125, 20, 205, 45), -1, "Root key", kCenterText, 12);
|
stretchedTuningSlider_ = view__55;
|
||||||
view__54->addView(view__55);
|
view__51->addView(view__55);
|
||||||
ValueMenu* const view__56 = createValueMenu(CRect(220, 60, 280, 85), kTagSetTuningFrequency, "", kCenterText, 12);
|
ValueLabel* const view__56 = createValueLabel(CRect(295, 20, 375, 45), -1, "Stretch", kCenterText, 12);
|
||||||
tuningFrequencySlider_ = view__56;
|
view__51->addView(view__56);
|
||||||
view__54->addView(view__56);
|
ValueLabel* const view__57 = createValueLabel(CRect(20, 20, 120, 45), -1, "Scala file", kCenterText, 12);
|
||||||
ValueLabel* const view__57 = createValueLabel(CRect(210, 20, 290, 45), -1, "Frequency", kCenterText, 12);
|
view__51->addView(view__57);
|
||||||
view__54->addView(view__57);
|
ValueButton* const view__58 = createValueButton(CRect(20, 60, 120, 85), kTagLoadScalaFile, "DefaultScale", kCenterText, 12);
|
||||||
Knob48* const view__58 = createKnob48(CRect(310, 45, 358, 93), kTagSetStretchedTuning, "", kCenterText, 14);
|
scalaFileButton_ = view__58;
|
||||||
stretchedTuningSlider_ = view__58;
|
view__51->addView(view__58);
|
||||||
view__54->addView(view__58);
|
ValueMenu* const view__59 = createValueMenu(CRect(135, 60, 170, 85), kTagSetScalaRootKey, "", kCenterText, 12);
|
||||||
ValueLabel* const view__59 = createValueLabel(CRect(295, 20, 375, 45), -1, "Stretch", kCenterText, 12);
|
scalaRootKeySlider_ = view__59;
|
||||||
view__54->addView(view__59);
|
view__51->addView(view__59);
|
||||||
ValueLabel* const view__60 = createValueLabel(CRect(20, 20, 120, 45), -1, "Scala file", kCenterText, 12);
|
ValueMenu* const view__60 = createValueMenu(CRect(170, 60, 200, 85), kTagSetScalaRootKey, "", kCenterText, 12);
|
||||||
view__54->addView(view__60);
|
scalaRootOctaveSlider_ = view__60;
|
||||||
ValueButton* const view__61 = createValueButton(CRect(20, 60, 120, 85), kTagLoadScalaFile, "DefaultScale", kCenterText, 12);
|
view__51->addView(view__60);
|
||||||
scalaFileButton_ = view__61;
|
Piano* const view__61 = createPiano(CRect(5, 400, 795, 470), -1, "", kCenterText, 14);
|
||||||
view__54->addView(view__61);
|
view__0->addView(view__61);
|
||||||
ValueMenu* const view__62 = createValueMenu(CRect(135, 60, 170, 85), kTagSetScalaRootKey, "", kCenterText, 12);
|
|
||||||
scalaRootKeySlider_ = view__62;
|
|
||||||
view__54->addView(view__62);
|
|
||||||
ValueMenu* const view__63 = createValueMenu(CRect(170, 60, 200, 85), kTagSetScalaRootKey, "", kCenterText, 12);
|
|
||||||
scalaRootOctaveSlider_ = view__63;
|
|
||||||
view__54->addView(view__63);
|
|
||||||
LogicalGroup* const view__64 = createLogicalGroup(CRect(5, 110, 795, 395), -1, "", kCenterText, 14);
|
|
||||||
subPanels_[kPanelInfo] = view__64;
|
|
||||||
view__0->addView(view__64);
|
|
||||||
view__64->setVisible(false);
|
|
||||||
RoundedGroup* const view__65 = createRoundedGroup(CRect(0, 0, 790, 285), -1, "", kCenterText, 14);
|
|
||||||
view__64->addView(view__65);
|
|
||||||
Label* const view__66 = createLabel(CRect(0, 0, 790, 285), -1, "Informative text goes here", kCenterText, 40);
|
|
||||||
view__65->addView(view__66);
|
|
||||||
Piano* const view__67 = createPiano(CRect(5, 400, 795, 470), -1, "", kCenterText, 14);
|
|
||||||
view__0->addView(view__67);
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue