]> Creatis software - bbtk.git/blobdiff - packages/toolsbbtk/bbs/appli/GUICreateBlackBox.bbs
*** empty log message ***
[bbtk.git] / packages / toolsbbtk / bbs / appli / GUICreateBlackBox.bbs
index 43ac0e4f6081aa94025cd6ca589073ae15c0629d..0a83f8a242726f2066d986abaf873510d6934297 100644 (file)
@@ -1,23 +1,23 @@
-description "Creates the XML or C++ code for a new black box"
-author "eduardo.davila at creatis.insa-lyon.fr"
+description "Creates the XML or C++ code for a new black box (interface for bbCreateBlackBox)"
+author "eduardo.davila@creatis.insa-lyon.fr"
 category "toolsbbtk"
 
 load std 
 load wx
 
 new OutputText windowTitle
-  set windowTitle.In "Black box informations"
+  set windowTitle.In "Create new black box in folder :"
 
 new DirectorySelector dir
     set dir.Message "Select the location of your new black box"
 
 new InputText nameBlackbox
-    set nameBlackbox.Title "Blackbox name         (1 word)"
-    set nameBlackbox.In "NEW_BLACKBOX"
+    set nameBlackbox.Title "Black box name         (1 word)"
+    set nameBlackbox.In "BLACKBOX_NAME"
 
 new InputText namePackage
     set namePackage.Title "Package name         (1 word)"
-    set namePackage.In "__PACKAGE__"
+    set namePackage.In "PACKAGE_NAME"
 
 
 new InputText author
@@ -25,24 +25,25 @@ new InputText author
     set author.In "_author_"
 
 new InputText description
-    set description.Title "Description            (caracters   '<',  '>' not accepted...)"
+    set description.Title "Description    (caracters   '<',  '>' not accepted...)"
     set description.In "_description_"
 
 #---------------------------------------------------------------------
 
 
 new RadioButton typeBlackbox
-  set typeBlackbox.Title "Type of the blackbox :"
-  set typeBlackbox.In0 "std-template"
-  set typeBlackbox.In1 "VTK_PolyDataAlgorithm-template"
-  set typeBlackbox.In2 "VTK_ImageAlgorithm-template"
-  set typeBlackbox.In3 "widget-template "
+  set typeBlackbox.Title "Type of the black box :"
+  set typeBlackbox.In0 "Basic  (inherits AtomicBlackBox, no particular Input/Output)"
+  set typeBlackbox.In1 "Widget (inherits WxBlackBox, has output 'Widget' of type 'wxWindow*')"
+  set typeBlackbox.In2 "VTK PolyDataAlgorithm (inherits AtomicBlackBox and a vtkPolyDataAlgorithm, has standard vtk I/O)"
+  set typeBlackbox.In3 "VTK ImageAlgorithm    (inherits AtomicBlackBox and a vtkImageAlgorithm, has standard vtk I/O)"
+
 
 new StringSelect stringselectorType
   set stringselectorType.In0 "std"
-  set stringselectorType.In1 "VTK_PolyDataAlgorithm"
-  set stringselectorType.In2 "VTK_ImageAlgorithm"
-  set stringselectorType.In3 "widget"
+  set stringselectorType.In1 "widget"
+  set stringselectorType.In2 "VTK_PolyDataAlgorithm"
+  set stringselectorType.In3 "VTK_ImageAlgorithm"
   connect  typeBlackbox.Out stringselectorType.In
 
 #---------------------------------------------------------------------
@@ -63,110 +64,134 @@ new StringSelect stringselectorFormat
 new OutputText dirOutput
   connect dir.Out dirOutput.In
 
-new LayoutLine layoutHor
-  set  layoutHor.Orientation H
-  connect typeBlackbox.Widget layoutHor.Widget1
-  connect formatBlackbox.Widget layoutHor.Widget2
+new LayoutLine layoutTop
+  connect windowTitle.Widget layoutTop.Widget1
+  connect dirOutput.Widget layoutTop.Widget2
+  connect nameBlackbox.Widget layoutTop.Widget3
+  connect namePackage.Widget layoutTop.Widget4
+  connect author.Widget layoutTop.Widget5
+  connect description.Widget layoutTop.Widget6
 
-#new CommandButton cancelButton
-#    set cancelButton.In "quit"
-#    set cancelButton.Label "Cancel"
+new LayoutSplit layoutTypeFormat
+  connect typeBlackbox.Widget layoutTypeFormat.Widget1
+  connect formatBlackbox.Widget layoutTypeFormat.Widget2
+  set layoutTypeFormat.Proportion 60
 
 new CommandButton createButton
     set createButton.In "print $concatStr.Out$; exec command; "
     set createButton.Label "Run"
 
-new LayoutLine buttons
-    set buttons.Orientation Horizontal
+new LayoutLine layoutButtons
+    set layoutButtons.Orientation Horizontal
 #    connect cancelButton.Widget buttons.Widget1
-    connect createButton.Widget buttons.Widget2
-
-new LayoutLine main
-    connect windowTitle.Widget main.Widget1
-    connect dirOutput.Widget main.Widget2
-    connect nameBlackbox.Widget main.Widget3
-    connect namePackage.Widget main.Widget4
-    connect author.Widget main.Widget5
-    connect description.Widget main.Widget6
-    connect layoutHor.Widget main.Widget7
-    connect buttons.Widget main.Widget8
+    connect createButton.Widget layoutButtons.Widget2
+
+new LayoutSplit layoutBot
+    connect layoutTypeFormat.Widget layoutBot.Widget1
+    connect layoutButtons.Widget layoutBot.Widget2
+    set layoutBot.Proportion 70
+
+new LayoutSplit main
+    connect layoutTop.Widget main.Widget1
+    connect layoutBot.Widget main.Widget2
+    set main.Proportion 50
     set main.WinTitle "Create new black box"
-    set main.WinDialog true
-    set main.WinWidth 35
-    set main.WinHeight 52
+#    set main.WinDialog true
+    set main.WinWidth 70
+    set main.WinHeight 60
 
 #---------------------------------------------------------------------
 
-new ASCII ascii
-  set ascii.In 34
 
+#-----------------------------------------------------------------------------
+new Configuration conf
+# on windows : enclose paths between double quotes 
+# if system==0 (Linux) dquote=space (ascci code 32)
+# if system==1 (Win) dquote==" (ascii code 34)
+new StringSelect onsystem
+set onsystem.In0 "32"
+set onsystem.In1 "34"
+new ASCII dquote
+connect conf.SystemType onsystem.In
+connect onsystem.Out dquote.In
+#set dquote.In 34
+
+# directory
 new ConcatStrings dirStr
  set dirStr.In1 " "
- connect ascii.Out dirStr.In2
+ connect dquote.Out dirStr.In2
  connect dir.Out dirStr.In3
- connect ascii.Out dirStr.In4
+ connect dquote.Out dirStr.In4
  set dirStr.In5 " "
 
+# package name
 new ConcatStrings packageNameStr
- connect namePackage.Out packageNameStr.In1
- set packageNameStr.In2 " "
+ set packageNameStr.In1 "  "
+ connect namePackage.Out packageNameStr.In2
+ set packageNameStr.In3 " "
 
+# black box name
 new ConcatStrings blackboxNameStr
- connect nameBlackbox.Out blackboxNameStr.In1
- set blackboxNameStr.In2 " "
+ set blackboxNameStr.In1 "  "
+ connect nameBlackbox.Out blackboxNameStr.In2
+ set blackboxNameStr.In3 " "
 
+# type of black box
 new ConcatStrings typeStr
- connect stringselectorType.Out typeStr.In1
- set typeStr.In2 " "
+ set typeStr.In1 "  "
+ connect stringselectorType.Out typeStr.In2
+ set typeStr.In3 " "
 
+# format of output 
 new ConcatStrings formatStr
- connect stringselectorFormat.Out formatStr.In1
- set formatStr.In2 " "
+ set formatStr.In1 "  "
+ connect stringselectorFormat.Out formatStr.In2
+ set formatStr.In3 " "
 
+# author
 new ConcatStrings authorStr
  set authorStr.In1 " '"
  connect author.Out authorStr.In2
  set authorStr.In3 "' "
 
+# description
 new ConcatStrings descriptionStr
  set descriptionStr.In1 " '"
  connect description.Out descriptionStr.In2
  set descriptionStr.In3 "' "
 
-new Configuration conf
-
-new ConcatStrings commandStr
-    set                                                commandStr.In1 " "
-    connect ascii.Out                  commandStr.In2
-    connect conf.BinPath               commandStr.In3
-    connect conf.FileSeparator commandStr.In4
-    set                                                commandStr.In5 "bbCreateBlackBox"
-    connect ascii.Out                  commandStr.In6
-    set                                                commandStr.In7 " "
-
-
+# Command string creation
+new ConcatStrings concatStrCommand
+    set concatStrCommand.In1 " "
+    connect dquote.Out                 concatStrCommand.In2
+    connect conf.BinPath               concatStrCommand.In3
+    connect conf.FileSeparator concatStrCommand.In4
+    set                concatStrCommand.In5  "bbCreateBlackBox"
+    connect dquote.Out                 concatStrCommand.In6
+    set                concatStrCommand.In7  " "
+
+# Params string creation
+new ConcatStrings concatStrParam
+    connect dirStr.Out                 concatStrParam.In1
+    connect packageNameStr.Out concatStrParam.In2
+    connect blackboxNameStr.Out        concatStrParam.In3
+    connect typeStr.Out                        concatStrParam.In4
+    connect formatStr.Out              concatStrParam.In5
+    connect authorStr.Out              concatStrParam.In6
+    connect descriptionStr.Out concatStrParam.In7
+    
+# Command + parameters string creation
 new ConcatStrings concatStr
-    connect  commandStr.Out            concatStr.In1 
-    connect dirStr.Out                         concatStr.In2 
-    connect packageNameStr.Out concatStr.In3 
-    connect blackboxNameStr.Out        concatStr.In4
-    connect typeStr.Out                                concatStr.In5
-    connect formatStr.Out                      concatStr.In6
-    connect authorStr.Out                      concatStr.In7
-    connect descriptionStr.Out         concatStr.In8
-
-/*
-LG : bug on linux 
-new ConcatStrings concatStr2
-    connect  ascii.Out                         concatStr2.In1 
-    connect concatStr.Out                      concatStr2.In2 
-    connect ascii.Out                          concatStr2.In3
-*/
+    connect dquote.Out                         concatStr.In1
+    connect concatStrCommand.Out       concatStr.In2
+    connect concatStrParam.Out                 concatStr.In3
+    connect dquote.Out                         concatStr.In4
 
+# Box which executes the command
 new ExecSystemCommand command
-//    connect concatStr2.Out command.In
     connect concatStr.Out command.In
 
+
 exec dir
 exec main