def __init__(self, error="Unknown", title="Error", width=800, height=400): self.Title = title self.Padding = drawing.Padding(0) self.Resizable = False # tab_items = forms.StackLayoutItem(self.TabControl, True) layout = forms.StackLayout() layout.Spacing = 5 layout.HorizontalContentAlignment = forms.HorizontalAlignment.Stretch self.m_textarea = forms.TextArea() self.m_textarea.Size = drawing.Size(400, 400) self.m_textarea.Text = error self.m_textarea.ReadOnly = True layout.Items.Add(self.m_textarea) sub_layout = forms.DynamicLayout() sub_layout.Spacing = drawing.Size(5, 0) sub_layout.AddRow(None, self.cancel) layout.Items.Add(forms.StackLayoutItem(sub_layout)) self.Content = layout self.Padding = drawing.Padding(12) self.Resizable = True # self.ClientSize = drawing.Size(width, height) self.ShowModal(Rhino.UI.RhinoEtoApp.MainWindow)
def __init__(self, image_path): self.Title = 'Render Blender' self.Padding = drawing.Padding(5) self.Resizable = True self.image = None if os.path.exists(image_path): self.img = System.Drawing.Image.FromFile(image_path) else: return None self.image = forms.ImageView() self.image.Image = Rhino.UI.EtoExtensions.ToEto(self.img) self.image.Size = drawing.Size(self.img.Width / 2, self.img.Height / 2) self.DefaultButton = forms.Button(Text='Save') self.DefaultButton.Click += self.OnOKButtonClick self.AbortButton = forms.Button(Text='Cancel') self.AbortButton.Click += self.OnCloseButtonClick layout = forms.DynamicLayout() layout.Spacing = drawing.Size(5, 5) layout.AddRow(self.image) layout.AddSeparateRow(None, self.DefaultButton, self.AbortButton) self.Content = layout
def __init__(self, names, values): self.names = names self.values = values self.table = table = forms.GridView() table.ShowHeader = True table.DataStore = [[name, value] for name, value in zip(self.names, self.values)] c1 = forms.GridColumn() c1.HeaderText = 'Name' c1.Editable = False c1.DataCell = forms.TextBoxCell(0) table.Columns.Add(c1) c2 = forms.GridColumn() c2.HeaderText = 'Value' c2.Editable = True c2.DataCell = forms.TextBoxCell(1) table.Columns.Add(c2) tab_items = forms.StackLayoutItem(table, True) layout = forms.StackLayout() layout.Items.Add(tab_items) layout.HorizontalContentAlignment = forms.HorizontalAlignment.Stretch sub_layout = forms.DynamicLayout() sub_layout.AddRow(None, self.ok, self.cancel) layout.Items.Add(forms.StackLayoutItem(sub_layout)) self.Title = 'RBE: update a list of properties' self.Padding = drawing.Padding(12) self.Resizable = True self.Content = layout self.ClientSize = drawing.Size(400, 600)
def __init__(self, args): self.Args = args # Initialize dialog box self.Title = 'Rebuild' self.Padding = drawing.Padding(5) # Create layout layout = forms.DynamicLayout() layout.Padding = drawing.Padding(5) layout.Spacing = drawing.Size(5, 5) layout.AddRow(self.CreateSteppers()) layout.AddRow(None) # spacer layout.AddRow(self.CreateCheckBoxes()) layout.AddRow(None) # spacer layout.AddRow(self.CreateButtons()) # Set the dialog content self.Content = layout
def __init__(self, colors): self.Title = "Sample Color Dropdown Dialog" self.ClientSize = drawing.Size(400, 200) self.Padding = drawing.Padding(5) self.Resizable = False self.m_dropdown = SampleEtoColorDropDown(colors) self.m_dropdown.SelectedIndex = 0 layout = forms.DynamicLayout() layout.Padding = drawing.Padding(10) layout.Spacing = drawing.Size(5, 5) layout.AddRow("Color:", self.m_dropdown, None) layout.Add(None, None, True) self.Content = layout
def setup(self, sceneNode): self.Title = "Attributes" self.sceneNode = sceneNode control = forms.TabControl() control.TabPosition = forms.DockPosition.Top tab = Tree_Tab.from_sceneNode(sceneNode, 'Edges') control.Pages.Add(tab) self.TabControl = control tab_items = forms.StackLayoutItem(self.TabControl, True) layout = forms.StackLayout() layout.Spacing = 5 layout.HorizontalContentAlignment = forms.HorizontalAlignment.Stretch layout.Items.Add(tab_items) sub_layout = forms.DynamicLayout() sub_layout.Spacing = drawing.Size(5, 0) # sub_layout.AddRow(None, self.ok, self.cancel, self.apply) sub_layout.AddRow(None, self.cancel) layout.Items.Add(forms.StackLayoutItem(sub_layout)) self.Content = layout self.Padding = drawing.Padding(12) self.Resizable = True self.ClientSize = drawing.Size(400, 600)
def __init__(self): self.Rnd = System.Random() self.Title = "Ladybug Sun System" self.Padding = drawing.Padding(10) self.Resizable = True self.Content = self.create_tabs() # FormClosed event handler self.Closed += self.on_form_closed
def initialize_form(self): self.Title = 'Sun Path' self.Padding = drawing.Padding(5) self.Resizable = False self.Maximizable = False self.Minimizable = False self.ShowInTaskbar = False self.MinimumSize = drawing.Size(210, 150)
def __init__(self): self.Title = "Sample Eto Dialog" self.ClientSize = drawing.Size(200, 200) self.Padding = drawing.Padding(5) self.Resizable = False label = forms.Label() label.Text = "Hello Rhino.Python!" self.Content = label
def initialize_form(self): self.Title = 'Sunlight Hours' self.Padding = drawing.Padding(5) self.Resizable = False self.Maximizable = False self.Minimizable = False self.ShowInTaskbar = False self.MinimumSize = drawing.Size(210, 150) self.UnLoad += self.on_unload
def Initialize(self): #Setup the dialog self.Title = "Project Information" self.Size = drawing.Size(600,330) self.Padding = drawing.Padding(5, 5) self.lightgrey = drawing.Colors.LightGrey self.darkgrey = drawing.Colors.DarkGray self.InitVariables()
def Initialize(self): self.Title = 'Sample Modeless Form' self.Padding = drawing.Padding(5) self.Resizable = True self.Maximizable = False self.Minimizable = False self.ShowInTaskbar = False self.MinimumSize = drawing.Size(200, 150) # FormClosed event handler self.Closed += self.OnFormClosed
def __init__(self): self.Title = "Sample Eto PushPickButton Dialog" self.ClientSize = drawing.Size(200, 200) self.Padding = drawing.Padding(5) self.Resizable = False button = forms.Button() button.Text = "Click Me!" button.Click += self.OnPushPickButton self.Content = button
def __init__(self): # create a control text = forms.TextArea() text.Text = "Every Good Boy Deserves Fudge." # create a layout layout = forms.TableLayout() layout.Padding = drawing.Padding(10) layout.Spacing = drawing.Size(5, 5) layout.Rows.Add(text) # set the panel content self.Content = layout
def initialize(self): self.Title = 'Sunpath' self.Icon = drawing.Icon(r"asset/ladybug.ico") self.Padding = drawing.Padding(5) self.Resizable = True self.Maximizable = False self.Minimizable = False self.ShowInTaskbar = False self.MinimumSize = drawing.Size(200, 50) # FormClosed event handler self.Closed += self.OnFormClosed
def CreateFormControls(self): # Create table layout layout = forms.TableLayout() layout.Padding = drawing.Padding(10) layout.Spacing = drawing.Size(5, 5) # Add controls to layout layout.Rows.Add(forms.Label(Text='Rhino Objects:')) layout.Rows.Add(self.CreateListBoxRow()) layout.Rows.Add(self.CreateButtonRow()) # Set the content self.Content = layout
def __init__(self): # Initialize dialog box self.Title = 'Rhino Viewport in an Eto Control' self.Padding = drawing.Padding(5) self.Resizable = True # Create viewport controls viewport0 = Rhino.UI.Controls.ViewportControl( Size=drawing.Size(400, 200)) viewport1 = Rhino.UI.Controls.ViewportControl( Size=drawing.Size(400, 200)) # Create layout layout = forms.DynamicLayout() layout.Padding = drawing.Padding(5) layout.Spacing = drawing.Size(5, 5) layout.AddRow(viewport0) layout.AddRow(viewport1) layout.AddRow(None) layout.AddRow(self.CloseButton()) # Set the dialog content self.Content = layout
def __init__(self, collection): self.m_collection = collection # Initialize dialog box properties self.Title = 'Sample Eto ListBox' self.Padding = drawing.Padding(5) self.Resizable = True # Create a label control label = forms.Label() label.Text = 'Select a fruit:' # Create dynamic layout control layout = forms.DynamicLayout() layout.Padding = drawing.Padding(5) layout.Spacing = drawing.Size(5, 5) # Add controls to layout layout.AddRow(label) layout.AddRow(self.CreateListBox()) layout.AddRow(None) # spacer layout.AddRow(self.CreateButtons()) # Set the dialog content self.Content = layout
def create_form_controls(self): # Create table layout layout = forms.TableLayout() layout.Padding = drawing.Padding(10) layout.Spacing = drawing.Size(20, 20) # Add controls to layout layout.Rows.Add(self.create_analysis_objects_group()) layout.Rows.Add(self.create_global_settings_table()) layout.Rows.Add(None) # Set the content self.Content = layout
def create_global_settings_table(self): #project path and name project_path_label = forms.Label(Text = 'Project folder:') self.m_project_path_picker = EtoUtil.create_file_picker( title = "Select project folder") self.m_project_path_picker.FilePath = 'c:\ladybug' self.m_project_path_picker.FileAction = FileAction.SelectFolder self.m_project_path = "c:\ladybug" layout_a = EtoUtil.create_layout_from_control_matrix([ [project_path_label], [self.m_project_path_picker]], drawing.Padding(5, 30, 5, 0)) project_name_label = forms.Label(Text = 'Project name:') project_name_label.Size = drawing.Size(140, 14) self.m_project_name_text_box = forms.TextBox() self.m_project_name_text_box.Text = "Project1" self.m_save_file_check_box = forms.CheckBox() self.m_save_file_check_box.Text = "Write file only" self.m_run_analysis_button = EtoUtil.create_button( text = 'Run Analysis', size = drawing.Size(140, 24), click_event_method = self.on_click_run_analysis) layout_b = EtoUtil.create_layout_from_control_matrix([ [project_name_label, None], [self.m_project_name_text_box]], drawing.Padding(5, 0, 5, 5)) layout_c = EtoUtil.create_layout_from_control_matrix([ [self.m_run_analysis_button, self.m_save_file_check_box,]], drawing.Padding(5, 10, 5, 5)) return EtoUtil.create_layout_from_control_matrix([[layout_a], [layout_b], [layout_c]], drawing.Padding(0,5))
def __init__(self): # Initialize dialog box self.Title = 'Dynamis' self.Padding = drawing.Padding(5) self.Resizable = False self.m_image_view = forms.ImageView() self.m_image_view.Size = drawing.Size(400, 225) self.m_image_view.Image = drawing.Bitmap("D:\AnimazioneBot\Vect.PNG") # Create layout self.m_button = forms.Button(Text='Esporta') self.m_button.Click += self.LanciaBotton self.m_textbox = forms.TextBox() self.m_label = forms.Label(Text='Indica il nome del progetto:') self.m_textbox.Text = "untitled" self.m_foronumero = forms.TextBox() self.m_forolabel = forms.Label(Text='Indica la dimensione del foro') self.m_foronumero.Text = "10" layout = forms.DynamicLayout() layout.Padding = drawing.Padding(5) layout.Spacing = drawing.Size(5, 5) layout.BeginVertical() layout.AddSeparateRow(None, self.m_image_view, None) layout.EndVertical() layout.AddRow(None) layout.BeginVertical() layout.AddRow(None, self.m_label, None, self.m_textbox, None) layout.EndVertical() layout.AddRow(None) layout.BeginVertical() layout.AddRow(None, self.m_forolabel, None, self.m_foronumero, None) layout.EndVertical() layout.AddRow(None) layout.BeginVertical() layout.AddRow(None, self.m_button, None, self.CloseButton(), None) layout.EndVertical() # Set the dialog content self.Content = layout
def create_form_controls(self): """Create all of the controls used by the form.""" # Create table layout layout = forms.TableLayout() layout.Padding = drawing.Padding(10) layout.Spacing = drawing.Size(5, 5) # Add controls to layout layout.Rows.Add(forms.Label(Text='Location:')) layout.Rows.Add(self.create_list_box()) layout.Rows.Add(self.create_button_row()) # Set the content self.Content = layout
def __init__(self): # create a control label = forms.Label() label.Text = "Text Label" # create a layout layout = forms.DynamicLayout() layout.DefaultSpacing = drawing.Size(5, 5) layout.Padding = drawing.Padding(10) # add the control to the layout layout.Add(label) # set the panel content self.Content = layout
def Initialize(self): #Setup the dialog self.Title = "Project Levels" self.Size = drawing.Size(550,565) self.Padding = drawing.Padding(5, 5) self.databasePath = r'C:\Users\twilliams\Desktop\TEMP\Database' self.versionName = r'Project_Info.yaml' try: self.databaseFile = rs.GetDocumentData('PCPA', 'Project_Database') except: self.databaseFile = ''
def create_form_controls(self): # Create table layout layout = forms.TableLayout() layout.Padding = drawing.Padding(10) layout.Spacing = drawing.Size(20, 20) # Add controls to layout layout.Rows.Add(self.create_north_table()) layout.Rows.Add(self.create_location_group()) layout.Rows.Add(self.create_date_time_group()) layout.Rows.Add(self.create_global_settings_table()) # Set the content self.Content = layout
def create_layout_from_control_matrix(control_matrix, padding=drawing.Padding(5, 5), scale_height = False, spacing = drawing.Size(5, 5)): layout = forms.TableLayout(Spacing = spacing) layout.Padding = padding for control_row in control_matrix: cells = [forms.TableCell(elem) for elem in control_row] row = forms.TableRow(cells) row.ScaleHeight = scale_height layout.Rows.Add(row) return layout
def create_north_table(self): northLabel = forms.Label(Text='North:') self.m_north_updown = EtoUtil.create_numeric_stepper(decimal_places = 0, increment = 1, value = 0, min = 0, max = 360, format_string = "{0}\N{DEGREE SIGN}", change_event_method =\ self.on_north_value_changed) #layout.Rows.Add(forms.TableRow() return EtoUtil.create_layout_from_control_matrix( [[northLabel, self.m_north_updown, None]], drawing.Padding(10, 0))
def setup(self, all_settings): self.Title = "Settings" self.TabControl = self.tabs_from_settings(all_settings) tab_items = forms.StackLayoutItem(self.TabControl, True) layout = forms.StackLayout() layout.Spacing = 5 layout.HorizontalContentAlignment = forms.HorizontalAlignment.Stretch layout.Items.Add(tab_items) sub_layout = forms.DynamicLayout() sub_layout.Spacing = drawing.Size(5, 0) sub_layout.AddRow(None, self.ok, self.cancel, self.apply) layout.Items.Add(forms.StackLayoutItem(sub_layout)) self.Content = layout self.Padding = drawing.Padding(12) self.Resizable = True
def __init__(self, url=None, width=800, height=400): self.Title = 'RhinoVault2' self.Padding = drawing.Padding(0) self.Resizable = False self.m_webview = forms.WebView() self.m_webview.Size = drawing.Size(width, height) if not url: url = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'src', 'index.html') self.m_webview.Url = System.Uri(url) self.m_webview.BrowserContextMenuEnabled = True layout = forms.DynamicLayout() layout.Spacing = drawing.Size(5, 5) layout.BeginVertical() layout.AddRow(self.m_webview) layout.EndVertical() self.Content = layout
def __init__(self, text, title=None): self.text = text self.textbox = textbox = forms.TextArea() textbox.ReadOnly = True textbox.Append(text) layout = forms.DynamicLayout() layout.AddRow(textbox) layout.Add(None) layout.BeginVertical() layout.BeginHorizontal() layout.AddRow(None, self.ok, self.cancel) layout.EndHorizontal() layout.EndVertical() self.Title = title self.Padding = drawing.Padding(12) self.Resizable = False self.Content = layout self.ClientSize = drawing.Size(400, 600)