Example #1
0
    def test_gtk(self):
        pygtkcompat.enable_gtk("3.0")
        pygtkcompat.enable_gtk("3.0")

        # https://bugzilla.gnome.org/show_bug.cgi?id=759009
        w = gtk.Window()
        w.realize()
        self.assertEqual(len(w.window.get_origin()), 2)
        w.destroy()
Example #2
0
    def test_gtk(self):
        pygtkcompat.enable_gtk("3.0")
        pygtkcompat.enable_gtk("3.0")
        import gtk

        # https://bugzilla.gnome.org/show_bug.cgi?id=759009
        w = gtk.Window()
        w.realize()
        self.assertEqual(len(w.window.get_origin()), 2)
        w.destroy()
Example #3
0
    def test_pygtkcompat(self):
        has_error = False
        try:
            import gi
            import pygtkcompat
            pygtkcompat.enable()
            pygtkcompat.enable_gtk(version='3.0')
        except (ImportError, ValueError) as _:
            has_error = True

        self.assertFalse(has_error)
Example #4
0
def original_gtk():
    logger.debug("Using GTK3")
    try:
        import pygtkcompat
        pygtkcompat.enable()
        pygtkcompat.enable_gtk(version='3.0')
    except ImportError:
        logger.warning('"import pygtkcompat" did not work, trying old '
                       'deprecated way')
        import gi.pygtkcompat
        gi.pygtkcompat.enable()
        gi.pygtkcompat.enable_gtk(version='3.0')
    import gtk
    return gtk
Example #5
0
def original_gtk():
    logger.debug("Using GTK3")
    try:
        import pygtkcompat
        pygtkcompat.enable()
        pygtkcompat.enable_gtk(version='3.0')
    except ImportError:
        logger.warning('"import pygtkcompat" did not work, trying old '
                       'deprecated way')
        import gi.pygtkcompat
        gi.pygtkcompat.enable()
        gi.pygtkcompat.enable_gtk(version='3.0')
    import gtk
    return gtk
Example #6
0
import pygtkcompat
pygtkcompat.enable()
pygtkcompat.enable_gtk(version='3.0')

import gtk


class MessageDialog(gtk.MessageDialog):
    def __init__(self, parent, primary_msg, secondary_msg):
        super(MessageDialog, self).__init__()
        self.add_button('OK', 1)
        self.set_property('text', primary_msg)
        self.set_property('secondary-text', secondary_msg)
        self.set_transient_for(parent)

    def display(self):
        self.run()
        self.destroy()


class ErrorDialog(MessageDialog):
    def __init__(self, parent, primary_msg, secondary_msg):
        super(ErrorDialog, self).__init__(parent, primary_msg, secondary_msg)
        self.set_property('message-type', gtk.MessageType.ERROR)
        self.display()


class InfoDialog(MessageDialog):
    def __init__(self, parent, primary_msg, secondary_msg):
        super(InfoDialog, self).__init__(parent, primary_msg, secondary_msg)
        self.set_property('message-type', gtk.MessageType.INFO)
 def setUp(self):
     pygtkcompat.enable_gtk("3.0")
 def test_gtk_version_conflict(self):
     pygtkcompat.enable_gtk("3.0")
     self.assertRaises(ValueError, pygtkcompat.enable_gtk, version='2.0')
Example #9
0
CLASSIFIERS = infodict["CLASSIFIERS"]


class PackageNotFoundError(Exception):
    pass


# Check required non-python dependencies for native install,
# Anaconda and virtualenv environments.
README = "README.md"
dep_str = "Non-Python dependency missing, please check the %s file." % README
try:
    import gi
    import pygtkcompat
    pygtkcompat.enable()
    pygtkcompat.enable_gtk(version="3.0")
    import gtk
    import gobject
except (ImportError, ValueError) as err:
    err_str = ("\n  Error: %s\n\n  %s" % (err, dep_str))
    raise PackageNotFoundError(err_str)

with open(README) as f:
    description_text = f.read()

packages = ["odmlui", "odmlui.dnd", "odmlui.treemodel"]

install_req = ["odml>=1.5.1"]

data_files = [("share/pixmaps", glob.glob(os.path.join("images", "*"))),
              ("share/odmlui", ["LICENSE"])]
Example #10
0
#!/usr/bin/env python

title = "File Tree (GenericTreeModel)"
description = """
This is a file list demo which makes use of the GenericTreeModel python
implementation of the Gtk.TreeModel interface. This demo shows what methods
need to be overridden to provide a valid TreeModel to a TreeView.
"""

import os
import stat
import time
from collections import OrderedDict

import pygtkcompat
pygtkcompat.enable_gtk('3.0')

import gtk


folderxpm = [
    "17 16 7 1",
    "  c #000000",
    ". c #808000",
    "X c yellow",
    "o c #808080",
    "O c #c0c0c0",
    "+ c white",
    "@ c None",
    "@@@@@@@@@@@@@@@@@",
    "@@@@@@@@@@@@@@@@@",
Example #11
0
# vim: tabstop=4 shiftwidth=4 expandtab

import unittest
import base64

try:
    from gi.repository import Gtk
    from gi.repository import Pango
    from gi.repository import Atk
    from gi.repository import Gdk
    (Atk, Gtk, Pango)  # pyflakes

    import pygtkcompat

    pygtkcompat.enable()
    pygtkcompat.enable_gtk(version=Gtk._version)

    import atk
    import pango
    import pangocairo
    import gtk
    import gtk.gdk
except (ValueError, ImportError):
    Gtk = None

from helper import capture_gi_deprecation_warnings, capture_glib_warnings


@unittest.skipUnless(Gtk, 'Gtk not available')
class TestMultipleEnable(unittest.TestCase):
Example #12
0
#!/usr/bin/env python

title = "File Tree (GenericTreeModel)"
description = """
This is a file list demo which makes use of the GenericTreeModel python
implementation of the Gtk.TreeModel interface. This demo shows what methods
need to be overridden to provide a valid TreeModel to a TreeView.
"""

import os
import stat
import time
from collections import OrderedDict

import pygtkcompat
pygtkcompat.enable_gtk('3.0')

import gtk


folderxpm = [
    "17 16 7 1",
    "  c #000000",
    ". c #808000",
    "X c yellow",
    "o c #808080",
    "O c #c0c0c0",
    "+ c white",
    "@ c None",
    "@@@@@@@@@@@@@@@@@",
    "@@@@@@@@@@@@@@@@@",
Example #13
0
 def setUp(self):
     pygtkcompat.enable_gtk("3.0")
Example #14
0
 def test_gtk_version_conflict(self):
     pygtkcompat.enable_gtk("3.0")
     self.assertRaises(ValueError, pygtkcompat.enable_gtk, version='2.0')
Example #15
0
import unittest

from gi.repository import GLib

try:
    from gi.repository import Pango
    from gi.repository import Atk
    from gi.repository import Gdk
    from gi.repository import Gtk
    (Atk, Gtk, Pango)  # pyflakes

    import pygtkcompat

    pygtkcompat.enable()
    pygtkcompat.enable_gtk(version='3.0')

    import atk
    import pango
    import pangocairo
    import gtk
    import gtk.gdk
except ImportError:
    Gtk = None


@unittest.skipUnless(Gtk, 'Gtk not available')
class TestATKCompat(unittest.TestCase):
    def test_object(self):
        self.assertTrue(hasattr(atk, 'Object'))
Example #16
0
"""
This is the TreeView that is most common (for example: it is used
in Rational Rose). This is a tree based on namespace relationships. As
a result only classifiers are shown here.
"""

import logging
import operator

# PyGTKCompat used for Gtk.GenericTreeModel Support
import pygtkcompat

pygtkcompat.enable()
pygtkcompat.enable_gtk("3.0")

from gi.repository import GObject
from gi.repository import Gtk
from gi.repository import Gdk
from zope import component
from zope.interface import implementer

from gaphor import UML
from gaphor.interfaces import IActionProvider
from gaphor.UML.event import (
    ElementCreateEvent,
    ElementDeleteEvent,
    ModelFactoryEvent,
    FlushFactoryEvent,
    DerivedSetEvent,
)
from gaphor.UML.interfaces import IAttributeChangeEvent, IElementDeleteEvent