Ryujinx-GtkSharp/gtk/Makefile.am
Dan Winship 9d04b4dd06 Redo child property handling; now we generate classes to hold
the
        child properties for a given widget in a container, and generate
        the child properties as properties on those classes.
        
        * parser/gapi2xml.pl (addPropElem): don't prepend "child_" to
        child prop names any more

        * generator/ClassBase.cs (ClassBase): keep childprops separate
        from properties
        (GenChildProperties): create a subclass of Gtk.ContainerChild
        containing the container type's child properties, and override
the
        Container indexer to return that type.

        * generator/ObjectGen.cs (Generate): call GenChildProperties

        * generator/Property.cs:
        * generator/ChildProperty.cs: Simplify these a bunch, since
        * child
        properties are now represented as C# properties as well. Also
add
        [GLib.Property(cname)] and [Gtk.ChildProperty(cname)]
attributes.

        * glib/Makefile.am (sources): add PropertyAttribute.cs

        * glib/PropertyAttribute.cs: attribute used to label
        GObject properties

        * gtk/Makefile.am (sources): add ChildPropertyAttribute.cs

        * gtk/gtk-api.raw: regenerate for parser changes (remove
        "Child"/"child_" from child property names).

        * gtk/ChildPropertyAttribute.cs: attribute used to label
        GtkContainer child properties

        * gtk/Container.custom: define the ContainerChild class, and an
        indexer to return instances of it.

        * doc/en/Gtk/: update for container child property change

svn path=/trunk/gtk-sharp/; revision=36284
2004-11-18 20:31:22 +00:00

146 lines
3.8 KiB
Makefile

SUBDIRS = . glue
API = gtk-api.xml
RAW_API = gtk-api.raw
ADDITIONAL_API = gtk-symbols.xml
INCLUDE_API = ../pango/pango-api.xml ../atk/atk-api.xml ../gdk/gdk-api.xml $(top_srcdir)/gdk/gdk-symbols.xml
METADATA = Gtk.metadata
ASSEMBLY_NAME = gtk-sharp
references = /r:../glib/glib-sharp.dll /r:../pango/pango-sharp.dll /r:../atk/atk-sharp.dll /r:../gdk/gdk-sharp.dll
TARGET = $(ASSEMBLY)
ASSEMBLY = $(ASSEMBLY_NAME).dll
gapidir = $(datadir)/gapi-2.0
noinst_DATA = $(ASSEMBLY) $(ASSEMBLY).config
gapi_DATA = $(API) $(ADDITIONAL_API)
CLEANFILES = $(ASSEMBLY) generated-stamp generated/*.cs $(API) glue/generated.c gtk-sharp.snk
DISTCLEANFILES = $(ASSEMBLY).config AssemblyInfo.cs
sources = \
Application.cs \
ChildPropertyAttribute.cs \
ITreeNode.cs \
NodeStore.cs \
ThreadNotify.cs \
TreeNodeAttribute.cs \
TreeNode.cs \
TreeNodeValueAttribute.cs
build_sources = $(addprefix $(srcdir)/, $(sources)) AssemblyInfo.cs
customs = \
Accel.custom \
AccelKey.custom \
Action.custom \
Adjustment.custom \
Bin.custom \
Button.custom \
Calendar.custom \
CellRenderer.custom \
CheckMenuItem.custom \
Clipboard.custom \
ColorSelection.custom \
ColorSelectionDialog.custom \
Combo.custom \
ComboBox.custom \
Container.custom \
Dialog.custom \
Entry.custom \
FileChooserDialog.custom \
FileChooserWidget.custom \
FileSelection.custom \
FileSystemModel.custom \
Frame.custom \
HBox.custom \
HScale.custom \
IconFactory.custom \
IconSet.custom \
IconTheme.custom \
ImageMenuItem.custom \
Init.custom \
InputDialog.custom \
ItemFactory.custom \
Label.custom \
Layout.custom \
ListStore.custom \
MessageDialog.custom \
Menu.custom \
MenuItem.custom \
Notebook.custom \
Object.custom \
Plug.custom \
RadioButton.custom \
RadioMenuItem.custom \
ScrolledWindow.custom \
SelectionData.custom \
Settings.custom \
SpinButton.custom \
Stock.custom \
Style.custom \
Table.custom \
TargetEntry.custom \
TargetList.custom \
TextBuffer.custom \
TextChildAnchor.custom \
TextIter.custom \
TextTag.custom \
TextView.custom \
TreeIter.custom \
TreeModel.custom \
TreeModelFilter.custom \
TreeModelSort.custom \
TreePath.custom \
TreeSelection.custom \
TreeStore.custom \
TreeViewColumn.custom \
TreeView.custom \
UIManager.custom \
VBox.custom \
VScale.custom \
Viewport.custom \
Widget.custom \
Window.custom
build_customs = $(addprefix $(srcdir)/, $(customs))
EXTRA_DIST = \
makefile.win32 \
$(ASSEMBLY).config.in \
AssemblyInfo.cs.in \
$(RAW_API) \
$(ADDITIONAL_API) \
$(METADATA) \
$(customs) \
$(sources)
$(API): $(srcdir)/$(RAW_API) $(srcdir)/$(METADATA)
cp $(srcdir)/$(RAW_API) $(API)
chmod u+w $(API)
$(RUNTIME) ../parser/gapi-fixup.exe --api=$(API) --metadata=$(srcdir)/$(METADATA)
generated-stamp: $(API) $(srcdir)/$(ADDITIONAL_API) ../generator/gapi_codegen.exe $(build_customs)
rm -f generated/* && \
$(RUNTIME) ../generator/gapi_codegen.exe --generate $(API) $(srcdir)/$(ADDITIONAL_API) \
--include $(INCLUDE_API) --outdir=generated --customdir=$(srcdir) --assembly-name=$(ASSEMBLY_NAME) \
--gluelib-name=gtksharpglue --glue-filename=glue/generated.c \
&& touch generated-stamp
gtk-sharp.snk: $(top_srcdir)/gtk-sharp.snk
cp $(top_srcdir)/gtk-sharp.snk .
$(ASSEMBLY): $(build_sources) generated-stamp gtk-sharp.snk
$(CSC) /nowarn:0612 /unsafe /out:$(ASSEMBLY) /target:library $(references) $(build_sources) $(GENERATED_SOURCES)
install-data-local:
@if test -n '$(TARGET)'; then \
echo "$(GACUTIL) /i $(ASSEMBLY) /f $(GACUTIL_FLAGS)"; \
$(GACUTIL) /i $(ASSEMBLY) /f $(GACUTIL_FLAGS) || exit 1; \
fi
uninstall-local:
@if test -n '$(TARGET)'; then \
echo "$(GACUTIL) /u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS)"; \
$(GACUTIL) /u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS) || exit 1; \
fi