Пример #1
0
 def _createLabel(self, labeltext):
     data = GridData(GridData.FILL_HORIZONTAL)
     data.verticalIndent = 5
     self.label = Label(self.window, SWT.WRAP)
     self.label.setLayoutData(data)
     self.label.setText(labeltext)
     self.label.setLocation(10, 40)
Пример #2
0
  def createContent(self, child, results, wordtosearch):
    resultsCount = len(results)
    gridLayout = GridLayout(1, 1)
    child.setLayout(gridLayout)

    #-- Introduction text
    introdata = GridData(GridData.FILL_HORIZONTAL) ; introdata.verticalIndent = 5
    introlabel = Label(child, SWT.WRAP)            ; introlabel.setLayoutData(introdata)
    if (resultsCount==0):
      introlabel.setText("No element matching your search request '"+wordtosearch+"' has been found.")
    else:
      if not orgVersion:
        introlabel.setText("Click on each element to select it directly from the UML model explorer.")
    introlabel.setLocation(10, 40)

    #-- "Objects found" panel containing a table (if the results is not empty)
    if (resultsCount!=0):
      resultsGroup = Group(child, SWT.NONE)
      fd_resultsGroup = GridData(SWT.FILL, SWT.FILL, 1,1)
      resultsGroup.setLayoutData(fd_resultsGroup)
      if resultsCount == 1:
        text = "1 element found"
      else:
        text = str(resultsCount)+" elements found"
      resultsGroup.setText(text)
      gridLayout2 = GridLayout()
      gridLayout2.numColumns = 1
      resultsGroup.setLayout(gridLayout)
      table = TableViewer(resultsGroup, SWT.NONE);
      table.getControl().setLayoutData(GridData(GridData.FILL_BOTH))
      # When a element in the list is selected then select it in modelio explorer
      # This is achieved with fireNavigate method of the NavigationService
      # FIXME this feature is currently not working on V3 because of fireNavigate
      class SCListener(ISelectionChangedListener):
        def __init__(self, app):
          self.app = app
        def selectionChanged(self, event):
          selection = event.getSelection()
          element = selection.getFirstElement()
          print element
          if (element != None):
            Modelio.getInstance().getNavigationService().fireNavigate(element)

      sclistener = SCListener(self)
      table.setContentProvider(self.SearchResultsContentProvider(results))
      table.setLabelProvider(self.SearchResultsLabelProvider())
      table.addSelectionChangedListener(sclistener)
      table.setInput(results)

    #-- "Close" Button
    closeBtn = Button(child, SWT.FLAT)
    closeBtn.setText("Close")
    class MyListener(Listener):
     def handleEvent(self, event):
      if (event.widget == closeBtn):
         closeBtn.getShell().close()
    listener = MyListener()
    closeBtn.addListener(SWT.Selection, listener)
    btndata = GridData(GridData.HORIZONTAL_ALIGN_END) ;    btndata.widthHint = 50
    closeBtn.setLayoutData(btndata)
Пример #3
0
 def _createLabel(self,labeltext):
   data = GridData(GridData.FILL_HORIZONTAL)
   data.verticalIndent = 5;
   self.label = Label(self.window, SWT.WRAP)
   self.label.setLayoutData(data)
   self.label.setText(labeltext)
   self.label.setLocation(10, 40)
Пример #4
0
 def _createBrowser(self, html=None, url=None):
     data = GridData(SWT.FILL, SWT.FILL, 1, 1)
     data.verticalIndent = 10
     self.browser = Browser(self.window, SWT.BORDER)
     self.browser.setLayoutData(data)
     if url is not None:
         self.setURL(url)
     else:
         if html is not None:
             self.setText(html)
         else:
             pass
Пример #5
0
 def _createBrowser(self,html=None,url=None):
   data = GridData(SWT.FILL,SWT.FILL,1,1)
   data.verticalIndent = 10;
   self.browser = Browser(self.window, SWT.BORDER)
   self.browser.setLayoutData(data)
   if url is not None:
     self.setURL(url)
   else:
     if html is not None:
       self.setText(html)
     else:
       pass