Пример #1
0
    def createControls(self):
        """Create controls that will used by panel
        """

        self.back = render_engine.Gui.createWidgetT(
            "Window", "WindowPanel_Back",
            mygui.IntCoord(0, render_engine.Window.height - self.height,
                           render_engine.Window.width, self.height),
            mygui.Align(), "Popup")

        self.buttonRight = render_engine.Gui.createWidgetT(
            "Button", "ScrollButton_Right",
            mygui.IntCoord(render_engine.Window.width - 49,
                           render_engine.Window.height - 49, 44, 44),
            mygui.Align(), "Popup")
        self.buttonLeft = render_engine.Gui.createWidgetT(
            "Button", "ScrollButton_Left",
            mygui.IntCoord(5, render_engine.Window.height - 49, 44, 44),
            mygui.Align(), "Popup")
        self.buttonRight.setEnabled(False)
        self.buttonLeft.setEnabled(False)

        self.buttonLeft.subscribeEventMouseButtonClick(self, "_onScrollLeft")
        self.buttonRight.subscribeEventMouseButtonClick(self, "_onScrollRight")

        self.buttonContainer = render_engine.Gui.createWidgetT(
            "Window", "WindowPanel_Container",
            mygui.IntCoord(55,
                           render_engine.Window.height - self.buttonSize[1],
                           render_engine.Window.width - 110,
                           self.buttonSize[1]), mygui.Align(), "Popup")
Пример #2
0
    def addPropertyWidget(self, type, skin, name):
        p_text = self.widget.createWidgetT("StaticText", "StaticText",
                                           mygui.IntCoord(0, 0, 0, 0),
                                           mygui.Align())
        p_text.setCaption(name)
        p_text.setCoord(
            self.widget.getSize().width - self.pWidget_width - textOffset2 -
            textOffset1 - p_text.getTextSize().width, self.pWidget_Y,
            p_text.getTextSize().width,
            p_text.getTextSize().height)
        p_text.setVisible(True)
        self.texts.append(p_text)
        p_widget = self.widget.createWidgetT(
            type, skin,
            mygui.IntCoord(
                self.widget.getSize().width - self.pWidget_width - textOffset2,
                self.pWidget_Y, self.pWidget_width, self.pWidget_height),
            mygui.Align())
        p_widget.setVisible(True)
        self.widgets.append(p_widget)
        self.pWidget_Y += self.pWidget_height + textOffset1

        global need_scroll_view_canvas_sz_update
        need_scroll_view_canvas_sz_update = True
        self.needSizeUpdate = True
        self.updateSize()
Пример #3
0
    def show(self):
        """show button
        """
        if not self.__showed:
            self.button = render_engine.Gui.createWidgetT("Button",
                                                          self._skin,
                                                          mygui.IntCoord(self.position[0], self.position[1], self.scale[0], self.scale[1]),
                                                          mygui.Align(),
                                                          "Popup", "")
            self.icon = self.button.createWidgetT("StaticImage",
                                                  "StaticImage",
                                                  mygui.IntCoord(5, 5, 10, 10),
                                                  mygui.Align())
                
            self.icon.setNeedKeyFocus(False)
            self.icon.setNeedMouseFocus(False)
            
            if self._icon_name is not None:
                self.icon.setImageTexture(self._icon_name)
            
            if self.getText() is not None:
                self.button.setCaption(self.getText())
            self._widget = self.button
            self.calculateAutoSize()

            self.__setActions()
            self.__showed = True

        self.setEnabled(True)
        self.setVisible(True)
Пример #4
0
 def __init__(self):
     IconButton.__init__(self)
     
     self._widget = render_engine.Gui.createWidgetT("Button", "MainPanel_OutputWindowButton",
                                                    mygui.IntCoord(0, 0, 0, 0),
                                                    mygui.Align(),
                                                    "Popup")
     self.autoSize = False
     
     self.iconWidget = self._widget.createWidgetT("StaticImage", "StaticImage",
                                                  mygui.IntCoord(0, 0, 10, 10),
                                                  mygui.Align())
     self.iconWidget.setNeedKeyFocus(False)
     self.iconWidget.setNeedMouseFocus(False)
     
     self.deleteControl = render_engine.Gui.createWidgetT("Button", "MainPanel_OutputWindowDelButton",
                                                          mygui.IntCoord(0, 0, 20, 20),
                                                          mygui.Align(),
                                                          "Popup")
     self.deleteControl.setVisible(False)
     self.deleteControl.subscribeEventMouseButtonClick(self, '_onDeleteButtonClicked')
     
     # handler for window deletion from output set
     self.deleteHandler = None
     
     self.setScale((70, 80))
Пример #5
0
 def createControls(self):
     """Create widgets that need to control ui
     """
     pos = (render_engine.Window.width - self.corner_size[0],
            render_engine.Window.height - self.corner_size[1])
     self._widget = render_engine.Gui.createWidgetT("Window", "MainPanel_Corner",
                                                    mygui.IntCoord(pos[0], pos[1], self.corner_size[0], self.corner_size[1]),
                                                     mygui.Align(),
                                                     "Popup")
     self.setPosition(pos)
     self.setScale(self.corner_size)
     self.setVisible(False)
     self.setEnabled(True)
     
     self.toolsLine = render_engine.Gui.createWidgetT("Window", "MainPanel_ToolsLine",
                                                      mygui.IntCoord(0, 0, 0, 0),
                                                      mygui.Align(),
                                                      "Popup")
     self.setVisible(False)
     self.setEnabled(False)
     
     # create buttons
     buttonWindows = MainPanelButton()
     buttonWindows._setScAddr(keynodes.ui.set_output_windows)
     buttonWindows.setVisible(True)
     buttonWindows.setEnabled(True)
     self.appendButton(buttonWindows)
Пример #6
0
    def _eventToolTip(self, _widget, _info):
        """Event on tooltip state change
        """
        if _info.type == mygui.ToolTipInfo.Show:
            if self.tooltip is not None: return
            self.tooltip = render_engine.Gui.createWidgetT(
                "Window", "MenuTop_ToolTip", mygui.IntCoord(0, 0, 10, 10),
                mygui.Align(), "ToolTip")

            text = self.tooltip.createWidgetT("StaticText",
                                              "MenuTop_ToolTipText",
                                              mygui.IntCoord(3, 3, 0, 0),
                                              mygui.Align())

            text.setCaption(unicode(self.tooltip_value))
            tsize = text.getTextSize()
            self.tooltip.setSize(tsize.width + 6, tsize.height + 6)
            text.setSize(tsize)

            self.tooltip.setPosition(_info.point)
            self.tooltip.setVisible(True)
            self.tooltip.setAlpha(0.8)

        elif _info.type == mygui.ToolTipInfo.Hide:
            render_engine.Gui.destroyWidget(self.tooltip)
            self.tooltip = None
Пример #7
0
    def addButton(self, _format):
        """Adds button to panel
        @param _format:    sc-node that designate format associated with button
        @type _format:    sc_addr
        """
        button = self.buttonContainer.createWidgetT(
            "Button", "WindowPanel_Button",
            mygui.IntCoord(
                self.scrollOffset + self.buttonSize[0] * len(self.buttons), 2,
                self.buttonSize[0], self.buttonSize[1]), mygui.Align())
        icon = button.createWidgetT(
            "StaticImage", "StaticImage",
            mygui.IntCoord(10, 8,
                           button.getWidth() - 20,
                           button.getHeight() - 20), mygui.Align())
        icon.setNeedKeyFocus(False)
        icon.setNeedMouseFocus(False)
        icon_name = self.getFormatIcon(_format)
        if icon_name is not None:
            icon.setImageTexture(icon_name)

        self.buttons.append(button)
        button.setUserString("id", str(button))
        # subscribing click event
        button.subscribeEventMouseButtonClick(self, '_onButtonClick')
        self.addr2widget[str(_format)] = button
        self.widget2addr[str(button)] = _format

        self.updateButtonsPosition()
        self.updateScrollButtons()
Пример #8
0
def create_panel():
    """Creates panel and preparing it for using
    """
    global panel_window
    global lock_button
    assert not panel_window
    
    panel_window = suit.core.render.engine.Gui.createWidgetT("Window", "Panel",
                                                              mygui.IntCoord(panel_side_width - panel_width,
                                                                             suit.core.render.engine.Window.height - 530,
                                                                             panel_width, panel_height),
                                                              mygui.Align())
    panel_window.setVisible(False)     # don't show panel at startup
    panel_window.setAlpha(0.9)          # make it with small alpha
    panel_window.subscribeEventRootMouseChangeFocus(eventRootMouseChangeFocus, '')
    panel_window.subscribeEventMouseMove(eventPanelMouseMoved, '')
    
    
    global scroll_view
    scroll_view = panel_window.createWidgetT("ScrollView", "ScrollView",
                                             mygui.IntCoord(0, 25, panel_width - panel_side_width - 3, panel_height - 35),
                                             mygui.Align())
    scroll_view.setVisible(True)
    
    
    lock_button = panel_window.createWidgetT("Button", "Button",
                                             mygui.IntCoord(panel_width + lock_button_offset[0], lock_button_offset[1],
                                                            35, 35),
                                                            mygui.Align())
    lock_button.setVisible(True)
    lock_button.setStateCheck(panel_locked)
    lock_button.subscribeEventMouseButtonClick(eventLockButtonMouseClick, '')
Пример #9
0
    def createEls(self):
        self.window = render_engine.Gui.createWidgetT(
            "Window", "Panel",
            mygui.IntCoord(self.window_x, self.window_y, self.window_w,
                           self.window_h), mygui.Align(), "Info")

        self.buttonOk = self.window.createWidgetT(
            "Button", "Button",
            mygui.IntCoord(self.window_w - self.button_w - 30,
                           (self.window_h - self.button_h) / 2, self.button_w,
                           self.button_h), mygui.Align())

        #        self.buttonHideShow = self.window.createWidgetT(
        #                        "Button", "Button",
        #                        mygui.IntCoord(self.window_w - 20 - 5,
        #                                       5,
        #                                       20,
        #                                       self.button_h),
        #                        mygui.Align())
        #
        #        self.edit = self.window.createWidgetT(
        #                        "Edit", "Edit",
        #                        mygui.IntCoord(5,
        #                                       5,
        #                                       self.window_w - self.button_w - 20 - 20,
        #                                       self.button_h),
        #                        mygui.Align())

        self.buttonHideShow = self.window.createWidgetT(
            "Button", "Button",
            mygui.IntCoord(self.window_w - 20 - 5,
                           (self.window_h - self.button_h) / 2, 20,
                           self.button_h), mygui.Align())

        self.edit = self.window.createWidgetT(
            "Edit", "Edit",
            mygui.IntCoord(5, (self.window_h - self.button_h) / 2,
                           self.window_w - self.button_w - 20 - 20,
                           self.button_h), mygui.Align())

        self.window.setVisible(True)
        self.buttonOk.setVisible(True)
        self.buttonOk.setCaption("Ok")
        self.buttonHideShow.setVisible(True)
        self.buttonHideShow.setCaption("<>")

        self.edit.setVisible(True)
        self.edit.setCaption(
            "вывести полную семантическую окрестность понятия треугольника")
        #self.edit.setCaption("как выглядит тупоугольный треугольник")

        self.buttonOk.subscribeEventMouseButtonClick(self,
                                                     "_buttonWndOutClick")
        self.buttonHideShow.subscribeEventMouseButtonClick(
            self, "_buttonShowHideClick")

        self._buttonShowHideClick("_buttonShowHideClick")
Пример #10
0
def initialize():
    """Initialize mode show widget
    """
    global _show_mode_window
    global _show_mode_text
    _show_mode_window = render_engine.Gui.createWidgetT(
        "Window", "Panel", mygui.IntCoord(0, 0, 0, 0), mygui.Align(), "Popup",
        "")
    _show_mode_text = _show_mode_window.createWidgetT(
        "StaticText", "StaticText", mygui.IntCoord(7, 7, 0, 0), mygui.Align())
Пример #11
0
 def createControls(self):
     """Create controls that will used by panel
     """
     self._widget = render_engine.Gui.createWidgetT(
         "Window", "Panel", mygui.IntCoord(0, 0, 0, 0), mygui.Align(),
         "Popup")
     self.itemContainer = self._widget.createWidgetT(
         "Window", "WindowPanel_Container",
         mygui.IntCoord(5, 25, self.width - 10, self.height - 50),
         mygui.Align())
Пример #12
0
 def __init__(self):
     IconButton.__init__(self)
     
     self._widget = render_engine.Gui.createWidgetT("Button", "MainPanel_Button",
                                                    mygui.IntCoord(0, 0, 0, 0),
                                                    mygui.Align(),
                                                    "Popup")
     self.autoSize = False
     
     self.iconWidget = self._widget.createWidgetT("StaticImage", "StaticImage",
                                                  mygui.IntCoord(0, 0, 10, 10),
                                                  mygui.Align())
     self.iconWidget.setNeedKeyFocus(False)
     self.iconWidget.setNeedMouseFocus(False)
Пример #13
0
    def createControls(self):
        """Create controls
        """
        self.back = render_engine.Gui.createWidgetT(
            "Window", "Panel", mygui.IntCoord(0, 0, 10, 10), mygui.Align(),
            "Popup")
        self.buttonContainer = self.back.createWidgetT(
            "ScrollView", "ScrollView", mygui.IntCoord(0, 0, 0, 0),
            mygui.Align())
        self.head_text = self.back.createWidgetT("StaticText",
                                                 "StaticTextHead",
                                                 mygui.IntCoord(0, 0, 0, 0),
                                                 mygui.Align())

        self.back.setVisible(False)
Пример #14
0
    def updateList(self):
        """Updates list of windows
        """
        # remove old buttons
        self.clearList()

        # get output arcs from format
        import sc_core.constants, sc_core.pm
        import suit.core.sc_utils as sc_utils
        session = core.Kernel.session()

        it = session.create_iterator(
            session.sc_constraint_new(sc_core.constants.CONSTR_3_f_a_a,
                                      self.format, sc_core.pm.SC_A_CONST,
                                      sc_core.pm.SC_N_CONST), True)
        while not it.is_over():
            # check if founded node designate sc-window
            if sc_utils.checkIncToSets(session, it.value(2),
                                       [keynodes.ui.sc_window],
                                       sc_core.pm.SC_A_CONST):
                button = self.buttonContainer.createWidgetT(
                    "Button", "Button", mygui.IntCoord(0, 0, 0, 0),
                    mygui.Align())
                button.setCaption(unicode(session.get_idtf(it.value(2))))
                button.subscribeEventMouseButtonClick(self, '_onButtonClick')

                id = str(button)
                button.setUserString("id", id)
                self.widget2addr[id] = it.value(2)

                button.setStateCheck(
                    core.Kernel.getSingleton().haveOutputWindow(it.value(2)))

                self.buttons.append(button)
            it.next()
Пример #15
0
 def _createWidget(self):
     """Creates panel widget
     """
     self.panel = self.parent.createWidgetT("Window", "StaticImage",
                                            mygui.IntCoord(5, 5, 10, 10),
                                            mygui.Align())
     self._create_value_widgets()
Пример #16
0
 def _createArea(self):
     #        print dir(mygui)
     self.statictext = render_engine.Gui.createWidgetT(
         "StaticText", "StaticText", mygui.IntCoord(0, 0, 91, 91),
         mygui.Align(mygui.ALIGN_VSTRETCH), "Main")
     self.statictext.setTextColour(mygui.Colour(0.0, 0.0, 0.0, 1.0))
     #self.statictext.setCaption(self.getContent())
     self.statictext.setNeedMouseFocus(False)
Пример #17
0
 def _createStaticText(self):
     self.widget = render_engine.Gui.createWidgetT(
         "StaticText", "StaticTextBack", mygui.IntCoord(0, 0, 91, 91),
         mygui.Align(mygui.ALIGN_VSTRETCH), "Main")
     self.widget.setVisible(False)
     self.widget.setTextColour(mygui.Colour(0.0, 0.0, 0.0, 1.0))
     #self.widget.setCaption(self.getContent())
     self.widget.setNeedMouseFocus(False)
Пример #18
0
 def _createEditText(self):
     """Create widget to edit text value
     """
     self.__viewer.widget = render_engine.Gui.createWidgetT(
         "Edit", "Edit", mygui.IntCoord(0, 0, 91, 91),
         mygui.Align(mygui.ALIGN_VSTRETCH), "Main")
     self.__viewer.widget.setVisible(False)
     self.__viewer.widget.setTextColour(mygui.Colour(0.0, 0.0, 0.0, 1.0))
     self.__viewer.widget.setEditMultiLine(True)
Пример #19
0
def _createHelpWindow():
    """Creates help window
    """
    global _help_window
    global _help_window_static_text
    _help_window = render_engine.Gui.createWidgetT(
        "Window", "Panel",
        mygui.IntCoord(5,
                       render_engine.Window.height - 5 - _help_window_height,
                       _help_window_width, _help_window_height), mygui.Align(),
        "Popup", "")
    _help_window_static_text = _help_window.createWidgetT(
        "StaticText", "StaticText",
        mygui.IntCoord(7, 7, _help_window_width - 14,
                       _help_window_height - 14), mygui.Align())
    #    _help_window_static_text.setCaption(_help_window_text)
    _help_window.setVisible(False)
    _help_window.setAlpha(0.8)
Пример #20
0
 def __init__(self, _container, kernel):
     objects.ObjectOverlay.__init__(self)
     self.kernel = kernel
     self._widget = _container.createWidgetT("Button", "Button",
                                             mygui.IntCoord(0, 0, 0, 0),
                                             mygui.Align())
     self._widget.setVisible(False)
     self._widget.setNeedMouseFocus(False)
     self.autoSize = False
Пример #21
0
    def controlPanel(self):

        self.butWidth = 80
        self.butHeight = 20
        self.butAmount = 5
        begin = (self.x - self.butWidth * self.butAmount)
        begin = begin / 2
        self.wpanel = self.gui.createWidgetT(
            "Widget", "Panel", mygui.IntCoord(1, self.y - 40, self.x, 40),
            mygui.Align(), "Popup", '')
        self.wpanel.setAlpha(0.5)

        self.slider = self.wpanel.createWidgetT("HScroll", "HSlider",
                                                mygui.IntCoord(50, 5, 700, 5),
                                                mygui.Align())
        self.slider.setScrollRange(100)

        self.stopbut = self.wpanel.createWidgetT(
            "Button", "Button",
            mygui.IntCoord(begin, 15, self.butWidth, self.butHeight),
            mygui.Align())
        self.stopbut.setCaption("Stop")
        self.stopbut.subscribeEventMouseButtonClick(self, '_stop')
        begin = begin + self.butWidth

        self.backbut = self.wpanel.createWidgetT(
            "Button", "Button",
            mygui.IntCoord(begin, 15, self.butWidth, self.butHeight),
            mygui.Align())
        self.backbut.setCaption("Back")
        begin = begin + self.butWidth

        self.plbut = self.wpanel.createWidgetT(
            "Button", "Button",
            mygui.IntCoord(begin, 15, self.butWidth, self.butHeight),
            mygui.Align())
        if self.audioPlayer.isPlaying():
            self.plbut.setCaption("Pause")
        else:
            self.plbut.setCaption("Play")
        self.plbut.subscribeEventMouseButtonClick(self, '_play_pause')
        begin = begin + self.butWidth

        self.forwbut = self.wpanel.createWidgetT(
            "Button", "Button",
            mygui.IntCoord(begin, 15, self.butWidth, self.butHeight),
            mygui.Align())
        self.forwbut.setCaption("Forward")
        begin = begin + self.butWidth

        self.volslider = self.wpanel.createWidgetT(
            "HScroll", "HSlider", mygui.IntCoord(begin, 23, self.butWidth, 5),
            mygui.Align())
        self.volslider.setScrollRange(100)
        #        print dir(self.slider)
        #        print self.volslider.setState.__doc__
        #self.controller = mygui.ControllerFadeAlpha(0, 1, True)
        #mygui.ControllerManager.getInstance().addItem(self.wpanel, self.controller)
        self.panel = True
Пример #22
0
    def createPanel(self):
        """Creates main panel
        """
        assert self.panel is None
        self.panel = render_engine.Gui.createWidgetT(
            "Window", "Panel", mygui.IntCoord(0, 0, 10, 10), mygui.Align(),
            "Info", "")
        self.button_ok = self.panel.createWidgetT(
            "Button", "Button", mygui.IntCoord(10, 0, 50, 20), mygui.Align())
        self.button_cancel = self.panel.createWidgetT(
            "Button", "Button", mygui.IntCoord(10, 0, 50, 20), mygui.Align())

        self.button_ok.setCaption("Ok")
        self.button_cancel.setCaption("Cancel")

        self.button_ok.subscribeEventMouseButtonClick(self, '_onButtonOkClick')
        self.button_cancel.subscribeEventMouseButtonClick(
            self, '_onButtonCancelClick')

        self.panel.setVisible(False)
Пример #23
0
 def createWidget(self):
     """Creates widget that allows to control item
     """
     assert scroll_view
     posY = 1    # initial y position
     if self.prev_item:  posY = self.prev_item.widget.getPosition().top + self.prev_item.widget.getSize().height + 1
     self.widget = scroll_view.createWidgetT("Button", "Button",
                                             mygui.IntCoord(0, posY, scroll_view.getSize().width - scroll_bar_width, 20),
                                             mygui.Align())
     self.widget.setVisible(True)
     self.widget.subscribeEventMouseButtonClick(self, "_eventPlanetButtonClick")
Пример #24
0
    def __init__(self):
        ObjectOverlay.__init__(self)

        self.width = 250
        self.height = 450
        self._widget = render_engine.Gui.createWidgetT(
            "Window", "Panel",
            mygui.IntCoord(-10,
                           (render_engine.Window.height - self.height) / 2,
                           self.width, self.height), mygui.Align())
        self.infoText = self._widget.createWidgetT(
            "StaticText", "StaticText",
            mygui.IntCoord(15, 15, self.width - 30, self.height - 30),
            mygui.Align())
        self.setVisible(False)
        self.setEnabled(True)

        self.object = None

        # flag to update information
        self.needInfoUpdate = False
Пример #25
0
    def createPanel(self, string="Panel"):
        assert scroll_view
        posY = 0
        offsetY = 0
        if self.prev_panel:
            offsetY = self.prev_panel.widget.getSize().height + 1
            posY = self.prev_panel.widget.getPosition().top
        else:
            offsetY = 0

        self.widget = scroll_view.createWidgetT(
            "Window", "Panel",
            mygui.IntCoord(0, posY + offsetY,
                           scroll_view.getCanvasSize().width, 200),
            mygui.Align())
        self.widget.setVisible(True)
        self.caption = self.widget.createWidgetT("StaticText", "StaticText",
                                                 mygui.IntCoord(0, 0, 0, 0),
                                                 mygui.Align())
        self.caption.setCaption(string)
        self.caption.setCoord(
            (self.widget.getSize().width - self.caption.getTextSize().width) /
            2, textOffset1,
            self.caption.getTextSize().width,
            self.caption.getTextSize().height)
        self.caption.setVisible(True)

        self.roll_button = self.widget.createWidgetT(
            "Button", "ButtonMinusPlus", mygui.IntCoord(0, 0, 20, 20),
            mygui.Align())
        self.roll_button.setPosition(
            self.widget.getSize().width - self.roll_button.getSize().width -
            textOffset2, textOffset1)
        self.roll_button.setVisible(True)
        self.roll_button.subscribeEventMouseButtonClick(
            self, "_eventRollButtonClick")

        self.pWidget_Y = self.caption.getSize(
        ).height + textOffset2 + textOffset1
        self.caption_height = self.pWidget_Y
Пример #26
0
    def drawUI(self):
        """
        This function draw user panel
        @return: None
        """
        panelWidth = 0
        textWidth = 0
        if self._curentUser._name is not None:
            textWidth = len(self._curentUser._name) * self._fontSize * 7 / 10
            panelWidth = textWidth + self._border * 4 + self._buttonSize
        else:
            textWidth = self._size[0]

        self._back = render_engine.Gui.createWidgetT(
            "Window", "Button",
            mygui.IntCoord(self._pos[0], self._pos[1], panelWidth,
                           self._size[1]), mygui.Align(), "Popup", "")
        self._button = self._back.createWidgetT(
            "Button", "Button",
            mygui.IntCoord(self._border, self._border, self._buttonSize,
                           self._buttonSize), mygui.Align())

        self._icon = self._button.createWidgetT(
            "StaticImage", "StaticImage",
            mygui.IntCoord(self._iconBorder, self._iconBorder, self._iconSize,
                           self._iconSize), mygui.Align())

        self._text = self._back.createWidgetT(
            "StaticText", "StaticTextBack",
            mygui.IntCoord(self._border * 2 + self._buttonSize,
                           self._size[1] / 2 - self._fontSize / 2, textWidth,
                           self._fontSize), mygui.Align(), "Main")

        self._text.setCaption(self._curentUser._name)
        self._icon.setNeedKeyFocus(False)
        self._icon.setNeedMouseFocus(False)

        if self._curentUser._icon is not None:
            self._icon.setImageTexture(self._curentUser._icon)
Пример #27
0
    def createEls(self):
        self.window = render_engine.Gui.createWidgetT(
            "Window", "Panel",
            mygui.IntCoord(10,
                           render_engine.Window.height - self.window_h - 60,
                           self.window_w, self.window_h), mygui.Align())

        self.buttonOk = self.window.createWidgetT(
            "Button", "Button",
            mygui.IntCoord(self.window_w - self.button_w - 20 - 10, 5,
                           self.button_w, self.button_h), mygui.Align())

        self.buttonHideShow = self.window.createWidgetT(
            "Button", "Button",
            mygui.IntCoord(self.window_w - 20 - 5, 5, 20, self.button_h),
            mygui.Align())

        self.edit = self.window.createWidgetT(
            "Edit", "Edit",
            mygui.IntCoord(5, 5, self.window_w - self.button_w - 20 - 20,
                           self.button_h), mygui.Align())

        self.window.setVisible(True)
        self.buttonOk.setVisible(True)
        self.buttonOk.setCaption("Ok")
        self.buttonHideShow.setVisible(True)
        self.buttonHideShow.setCaption("+")

        self.edit.setVisible(True)
        self.edit.setCaption(
            "вывести полную семантическую окрестность понятия плоскость")
        #self.edit.setCaption("как выглядит тупоугольный треугольник")

        self.buttonOk.subscribeEventMouseButtonClick(self,
                                                     "_buttonWndOutClick")
        self.buttonHideShow.subscribeEventMouseButtonClick(
            self, "_buttonShowHideClick")
Пример #28
0
    def createPanel(self):
        """Create controls panel
        """
        assert self.panel is None

        self.panel = render_engine.Gui.createWidgetT(
            "Window", "Panel", mygui.IntCoord(0, 0, self.width, self.height),
            mygui.Align(), "Info", "")
        self.types_list = self.panel.createWidgetT(
            "List", "List", mygui.IntCoord(10, 10, self.width - 20, 165),
            mygui.Align())
        self.types_list.subscribeEventChangePosition(self, 'item_selected')

        self.button_ok = self.panel.createWidgetT(
            "Button", "Button", mygui.IntCoord(10, self.height - 35, 50, 25),
            mygui.Align())
        self.button_cancel = self.panel.createWidgetT(
            "Button", "Button", mygui.IntCoord(60, self.height - 35, 60, 25),
            mygui.Align())

        self.button_ok.setCaption("Ok")
        self.button_cancel.setCaption("Cancel")
        self.button_ok.setEnabled(False)
        self.button_ok.subscribeEventMouseButtonClick(self, '_onButtonOkClick')
        self.button_cancel.subscribeEventMouseButtonClick(
            self, '_onButtonCancelClick')

        self.checkbox_edit = self.panel.createWidgetT(
            "Button", "CheckBox", mygui.IntCoord(10, 185, self.width - 20, 22),
            mygui.Align())
        self.checkbox_edit.setCaption("Create editor")
        self.checkbox_edit.setStateCheck(False)
        self.checkbox_edit.setEnabled(False)

        self.checkbox_edit.subscribeEventMouseButtonClick(self, "_onCheckBox")

        self.panel.setVisible(False)
Пример #29
0
def create_window():
    """Creates window and preparing it for using
    """
    global panel_window
    assert not panel_window

    panel_window = suit.core.render.engine.Gui.createWidgetT(
        "Window", "Window",
        mygui.IntCoord(suit.core.render.engine.Window.width - panel_width - 5,
                       35, panel_width, panel_height), mygui.Align())
    panel_window.setVisible(False)  # don't show panel at startup
    panel_window.setAlpha(0.9)  # make it with small alpha
    panel_window.setCaption("Object Properties")

    global scroll_view
    scroll_view = panel_window.createWidgetT(
        "ScrollView", "ScrollView",
        mygui.IntCoord(0, 0, panel_width - 10,
                       panel_height - panel_caption_height), mygui.Align())
    scroll_view.setCanvasSize(scroll_view.getSize().width - scroll_bar_width,
                              scroll_view.getSize().height)

    global main_proppanel
    main_proppanel = PropertyPanel()
    main_proppanel.createPanel("Main Properties")
    main_proppanel.addPropertyWidget("Edit", "Edit", "Object Name")
    main_proppanel.addPropertyWidget("Edit", "Edit", "Year")
    main_proppanel.addPropertyWidget("Edit", "Edit", "Day")
    main_proppanel.addPropertyWidget("Edit", "Edit", "Radius")
    main_proppanel.addPropertyWidget("Edit", "Edit", "Orbital radius")
    prop_panels.append(main_proppanel)

    global second_proppanel
    second_proppanel = PropertyPanel(main_proppanel)
    second_proppanel.createPanel("Other Properties")
    prop_panels.append(second_proppanel)
Пример #30
0
def update(dt):
    global need_scroll_view_canvas_sz_update
    global scroll_view
    global need_panel_position_update
    for panel in prop_panels:
        if panel.needSizeUpdate:
            maxSize_y = (textOffset1 + panel.pWidget_height) * len(
                panel.widgets) + panel.caption_height + textOffset1
            minSize_y = panel.caption_height
            offset_y = panel.moveSpeed * move_time
            if panel.moveSpeed > 0:
                newSize_y = min(
                    [maxSize_y,
                     panel.widget.getSize().height + offset_y])
                panel.widget.setSize(panel.widget.getSize().width, newSize_y)
                if newSize_y == maxSize_y:
                    panel.needSizeUpdate = False
            elif panel.moveSpeed < 0:
                newSize_y = max(
                    [minSize_y,
                     panel.widget.getSize().height + offset_y])
                panel.widget.setSize(panel.widget.getSize().width, newSize_y)
                if newSize_y == minSize_y:
                    panel.needSizeUpdate = False
            need_scroll_view_canvas_sz_update = True
            need_panel_position_update = True
    if need_panel_position_update:
        for panel in prop_panels:
            if panel.prev_panel:
                panel.widget.setPosition(
                    panel.widget.getPosition().left,
                    panel.prev_panel.widget.getSize().height + textOffset1)
        need_panel_position_update = False

    if need_scroll_view_canvas_sz_update:
        canvasSize = 0
        for panel in prop_panels:
            canvasSize += panel.widget.getSize().height
        scroll_view.setCanvasSize(scroll_view.getCanvasSize().width,
                                  canvasSize)
        scroll_view.setCanvasAlign(mygui.Align(mygui.Align.Enum.Top))
        need_scroll_view_canvas_sz_update = False