Ver código fonte

Add simple "new" and "open" buttons (not doing anything yet)

Yentl Van Tendeloo 8 anos atrás
pai
commit
8dda0f3c9c

+ 7 - 4
classes/button/button.xml

@@ -14,9 +14,12 @@
         </super>
         <body>
             self.event_parameters = constructor_parameters["event_parameters"]
-            self.tooltip = ToolTip(self, constructor_parameters["tooltip_text"])
+            if "tooltip_text" in constructor_parameters:
+                self.tooltip = ToolTip(self, constructor_parameters["tooltip_text"])
+            else:
+                self.tooltip = None
             self.visual = constructor_parameters["visual"]
-            self.pack()
+            self.pack(**constructor_parameters.get('packing', {}))
         </body>
     </constructor>
     <destructor>
@@ -33,13 +36,13 @@
                         <parameter expr="self.event_parameters" />
                     </raise>
                 </transition>
-                <transition port='input' event="enter" target='.' cond='tagorid == id(self)'>
+                <transition port='input' event="enter" target='.' cond='tagorid == id(self) and self.tooltip is not None'>
                     <parameter name='tagorid' type='int' default='None' />
                     <script>
                         self.tooltip.showtip()
                     </script>
                 </transition>
-                <transition port='input' event="leave" target='.' cond='tagorid == id(self)'>
+                <transition port='input' event="leave" target='.' cond='tagorid == id(self) and self.tooltip is not None'>
                     <parameter name='tagorid' type='int' default='None' />
                     <script>
                         self.tooltip.hidetip()

BIN
classes/toolbar/.generic_toolbar.xml.swp


+ 12 - 3
classes/toolbar/generic_toolbar.xml

@@ -1,13 +1,16 @@
 <class name="GenericToolbar">
     <relationships>
-        <inheritance class="tk.Toplevel" priority="1"/>
+        <inheritance class="tk.Frame" priority="1"/>
         <inheritance class="MvKWidget" priority="0"/>
         <association name="buttons" class="Button"/>
         <association name="parent" class="A"/>
     </relationships>
 
     <constructor>
-        <super class="tk.TopLevel"/>
+        <parameter name="parent"/>
+        <super class="tk.Frame">
+            <parameter expr="parent"/>
+        </super>
         <super class="MvKWidget"/>
         <body>
             self.to_create = ["new", "open"]
@@ -24,12 +27,18 @@
 
     <scxml initial="init">
         <state id="init" initial="init_buttons">
+            <onexit>
+                <script>
+                    self.pack()
+                </script>
+            </onexit>
+
             <state id="init_buttons">
                 <onentry>
                     <raise event="create_instance" scope="cd">
                         <parameter expr="'buttons'"/>
                         <parameter expr="'Button'"/>
-                        <parameter expr="{'parent': self, 'visual': TextVisual(self.to_create[0]), 'tooltip_text': self.button_info[self.to_create[0]], 'event_parameters': self.to_create[0]}"/>
+                        <parameter expr="{'parent': self, 'visual': ImageVisual('icons/%s.png' % self.to_create[0]), 'tooltip_text': self.button_info[self.to_create[0]], 'event_parameters': self.to_create[0], 'packing': {'side': tk.LEFT}}"/>
                     </raise>
                 </onentry>
 

+ 1 - 0
classes/window/main_window.xml

@@ -27,6 +27,7 @@
                     <raise event="create_instance" scope="cd">
                         <parameter expr="'toolbars'"/>
                         <parameter expr="'GenericToolbar'"/>
+                        <parameter expr="self"/>
                     </raise>
                 </onentry>
 

BIN
icons/new.png


BIN
icons/open.png