[gimp/soc-2009-dynamics] Added dynamics list and some infrastructure. still ont 100% tho



commit ac111be15d01e142c7bba8ea80f774b3f4369828
Author: Alexia Death <alexiadeath gmail com>
Date:   Fri Oct 9 20:25:07 2009 +0300

    Added dynamics list and some infrastructure. still ont 100% tho

 app/actions/Makefile.am               |    2 ++
 app/actions/actions.c                 |    4 ++++
 app/actions/dialogs-actions.c         |    7 +++++++
 app/actions/dynamics-editor-actions.c |    2 +-
 app/core/gimpdynamics-save.c          |    4 ++--
 app/dialogs/dialogs-constructors.c    |   13 +++++++++++++
 app/dialogs/dialogs-constructors.h    |    3 +++
 app/dialogs/dialogs.c                 |    9 +++++++++
 app/menus/menus.c                     |   12 ++++++++++--
 app/widgets/Makefile.am               |    6 ++++--
 app/widgets/gimphelp-ids.h            |    8 ++++++++
 app/widgets/widgets-types.h           |    1 +
 menus/dialogs-menuitems.xml           |    1 +
 menus/dynamics-menu.xml               |    7 +++++++
 14 files changed, 72 insertions(+), 7 deletions(-)
---
diff --git a/app/actions/Makefile.am b/app/actions/Makefile.am
index 8c1a796..c1ea88d 100644
--- a/app/actions/Makefile.am
+++ b/app/actions/Makefile.am
@@ -75,6 +75,8 @@ libappactions_a_SOURCES = \
 	drawable-actions.h		\
 	drawable-commands.c		\
 	drawable-commands.h		\
+	dynamics-actions.c		\
+	dynamics-actions.h		\
 	dynamics-editor-actions.c	\
 	dynamics-editor-actions.h	\
 	edit-actions.c			\
diff --git a/app/actions/actions.c b/app/actions/actions.c
index c1e0d2b..f17fbcd 100644
--- a/app/actions/actions.c
+++ b/app/actions/actions.c
@@ -64,6 +64,7 @@
 #include "dockable-actions.h"
 #include "documents-actions.h"
 #include "drawable-actions.h"
+#include "dynamics-actions.h"
 #include "dynamics-editor-actions.h"
 #include "edit-actions.h"
 #include "error-console-actions.h"
@@ -187,6 +188,9 @@ static const GimpActionFactoryEntry action_groups[] =
   { "patterns", N_("Patterns"), GIMP_STOCK_PATTERN,
     patterns_actions_setup,
     patterns_actions_update },
+  { "dynamics", N_("Dynamics"), GIMP_STOCK_DYNAMICS,
+    dynamics_actions_setup,
+    dynamics_actions_update },
   { "plug-in", N_("Plug-Ins"), GIMP_STOCK_PLUGIN,
     plug_in_actions_setup,
     plug_in_actions_update },
diff --git a/app/actions/dialogs-actions.c b/app/actions/dialogs-actions.c
index f3fdbb5..2c1b601 100644
--- a/app/actions/dialogs-actions.c
+++ b/app/actions/dialogs-actions.c
@@ -130,6 +130,13 @@ const GimpStringActionEntry dialogs_dockable_actions[] =
     "gimp-dynamics-editor",
     GIMP_HELP_DYNAMICS_EDITOR_DIALOG },
 
+  { "dialogs-dynamics", GIMP_STOCK_PATTERN,
+    NC_("dialogs-action", "Dynamics"), NULL,
+    NC_("dialogs-action", "Open dynamics list dialog"),
+    "gimp-dynamics-list",
+    GIMP_HELP_DYNAMICS_DIALOG },
+
+
   { "dialogs-patterns", GIMP_STOCK_PATTERN,
     NC_("dialogs-action", "P_atterns"), "<control><shift>P",
     NC_("dialogs-action", "Open the patterns dialog"),
diff --git a/app/actions/dynamics-editor-actions.c b/app/actions/dynamics-editor-actions.c
index 80902dd..800ada3 100644
--- a/app/actions/dynamics-editor-actions.c
+++ b/app/actions/dynamics-editor-actions.c
@@ -60,7 +60,7 @@ dynamics_editor_actions_setup (GimpActionGroup *group)
                                  dynamics_editor_actions,
                                  G_N_ELEMENTS (dynamics_editor_actions));
 
-	   gimp_action_group_add_toggle_actions (group, "dynamics-editor-action",
+  gimp_action_group_add_toggle_actions (group, "dynamics-editor-action",
                                         dynamics_editor_toggle_actions,
                                         G_N_ELEMENTS (dynamics_editor_toggle_actions));
 
diff --git a/app/core/gimpdynamics-save.c b/app/core/gimpdynamics-save.c
index f435ef3..e466d08 100644
--- a/app/core/gimpdynamics-save.c
+++ b/app/core/gimpdynamics-save.c
@@ -33,8 +33,8 @@
 
 
 gboolean
-gimp_curve_save (GimpData  *data,
-                 GError   **error)
+gimp_dynamics_save (GimpData  *data,
+                    GError   **error)
 {
   GimpDynamics *dynamics;
   FILE         *file;
diff --git a/app/dialogs/dialogs-constructors.c b/app/dialogs/dialogs-constructors.c
index 1661436..47d70cf 100644
--- a/app/dialogs/dialogs-constructors.c
+++ b/app/dialogs/dialogs-constructors.c
@@ -58,6 +58,7 @@
 #include "widgets/gimpmenudock.h"
 #include "widgets/gimppaletteeditor.h"
 #include "widgets/gimppatternfactoryview.h"
+#include "widgets/gimpdynamicsfactoryview.h"
 #include "widgets/gimpsamplepointeditor.h"
 #include "widgets/gimpselectioneditor.h"
 #include "widgets/gimptemplateview.h"
@@ -365,6 +366,18 @@ dialogs_brush_list_view_new (GimpDialogFactory *factory,
 }
 
 GtkWidget *
+dialogs_dynamics_list_view_new (GimpDialogFactory *factory,
+                                GimpContext       *context,
+                                gint               view_size)
+{
+  return gimp_dynamics_factory_view_new (GIMP_VIEW_TYPE_LIST,
+                                         context->gimp->dynamics_factory,
+                                         context,
+                                         view_size, 1,
+                                         factory->menu_factory);
+}
+
+GtkWidget *
 dialogs_pattern_list_view_new (GimpDialogFactory *factory,
                                GimpContext       *context,
                                gint               view_size)
diff --git a/app/dialogs/dialogs-constructors.h b/app/dialogs/dialogs-constructors.h
index 02505d8..a471e41 100644
--- a/app/dialogs/dialogs-constructors.h
+++ b/app/dialogs/dialogs-constructors.h
@@ -108,6 +108,9 @@ GtkWidget * dialogs_image_list_view_new    (GimpDialogFactory *factory,
 GtkWidget * dialogs_brush_list_view_new    (GimpDialogFactory *factory,
                                             GimpContext       *context,
                                             gint               view_size);
+GtkWidget * dialogs_dynamics_list_view_new (GimpDialogFactory *factory,
+                                            GimpContext       *context,
+                                            gint               view_size);
 GtkWidget * dialogs_pattern_list_view_new  (GimpDialogFactory *factory,
                                             GimpContext       *context,
                                             gint               view_size);
diff --git a/app/dialogs/dialogs.c b/app/dialogs/dialogs.c
index c0c19aa..43759bb 100644
--- a/app/dialogs/dialogs.c
+++ b/app/dialogs/dialogs.c
@@ -132,6 +132,11 @@ static const GimpDialogFactoryEntry toplevel_entries[] =
   { "gimp-"#id"-grid", name, blurb, stock_id, help_id, \
     dialogs_##id##_grid_view_new, view_size, FALSE, FALSE, FALSE, TRUE, TRUE }
 
+#define LIST(id,name,blurb,stock_id,help_id,\
+             view_size) \
+  { "gimp-"#id"-list", name, blurb, stock_id, help_id, \
+    dialogs_##id##_list_view_new, view_size, FALSE, FALSE, FALSE, TRUE, TRUE }
+
 static const GimpDialogFactoryEntry dock_entries[] =
 {
   /*  singleton dockables  */
@@ -172,6 +177,10 @@ static const GimpDialogFactoryEntry dock_entries[] =
   LISTGRID (template, N_("Templates"), N_("Image Templates"), GIMP_STOCK_TEMPLATE,
             GIMP_HELP_TEMPLATE_DIALOG, GIMP_VIEW_SIZE_SMALL),
 
+  /* Some things do not have grids, so just list */
+  LIST (dynamics, N_("Dynamics"), NULL, GIMP_STOCK_DYNAMICS,
+        GIMP_HELP_DYNAMICS_DIALOG, GIMP_VIEW_SIZE_MEDIUM),
+
   /*  image related  */
   DOCKABLE ("gimp-layer-list",
             N_("Layers"), NULL, GIMP_STOCK_LAYERS,
diff --git a/app/menus/menus.c b/app/menus/menus.c
index be284aa..89d79b7 100644
--- a/app/menus/menus.c
+++ b/app/menus/menus.c
@@ -207,6 +207,14 @@ menus_init (Gimp              *gimp,
                                       "brushes-menu.xml", plug_in_menus_setup,
                                       NULL);
 
+  gimp_menu_factory_manager_register (global_menu_factory, "<Dynamics>",
+                                      "dynamics",
+                                      "plug-in",
+                                      NULL,
+                                      "/dynamics-popup",
+                                      "dynamics-menu.xml", plug_in_menus_setup,
+                                      NULL);
+
   gimp_menu_factory_manager_register (global_menu_factory, "<Patterns>",
                                       "patterns",
                                       "plug-in",
@@ -274,7 +282,7 @@ menus_init (Gimp              *gimp,
                                       "/brush-editor-popup",
                                       "brush-editor-menu.xml", NULL,
                                       NULL);
-	
+
   gimp_menu_factory_manager_register (global_menu_factory, "<DynamicsEditor>",
                                       "dynamics-editor",
                                       NULL,
@@ -351,7 +359,7 @@ menus_init (Gimp              *gimp,
                                       "text-tool-menu.xml",
                                       NULL,
                                       NULL);
-  
+
   gimp_menu_factory_manager_register (global_menu_factory, "<CursorInfo>",
                                       "cursor-info",
                                       NULL,
diff --git a/app/widgets/Makefile.am b/app/widgets/Makefile.am
index 8570468..e126c85 100644
--- a/app/widgets/Makefile.am
+++ b/app/widgets/Makefile.am
@@ -33,8 +33,6 @@ libappwidgets_a_sources = \
 	gimpblobeditor.h		\
 	gimpbrusheditor.c		\
 	gimpbrusheditor.h		\
-	gimpdynamicseditor.c		\
-	gimpdynamicseditor.h		\
 	gimpbrushfactoryview.c		\
 	gimpbrushfactoryview.h		\
 	gimpbrushselect.c		\
@@ -144,6 +142,10 @@ libappwidgets_a_sources = \
 	gimpdocumentview.h		\
 	gimpdrawabletreeview.c		\
 	gimpdrawabletreeview.h		\
+	gimpdynamicseditor.c		\
+	gimpdynamicseditor.h		\
+	gimpdynamicsfactoryview.c		\
+	gimpdynamicsfactoryview.h		\
 	gimpeditor.c			\
 	gimpeditor.h			\
 	gimpenumaction.c		\
diff --git a/app/widgets/gimphelp-ids.h b/app/widgets/gimphelp-ids.h
index 0049071..e863e87 100644
--- a/app/widgets/gimphelp-ids.h
+++ b/app/widgets/gimphelp-ids.h
@@ -309,6 +309,14 @@
 
 #define GIMP_HELP_DYNAMICS_EDITOR_DIALOG          "gimp-dynamics-editor-dialog"
 
+#define GIMP_HELP_DYNAMICS_DIALOG                 "gimp-dynamics-dialog"
+#define GIMP_HELP_DYNAMICS_EDIT                   "gimp-dynamics-edit"
+#define GIMP_HELP_DYNAMICS_NEW                    "gimp-dynamics-new"
+#define GIMP_HELP_DYNAMICS_DUPLICATE              "gimp-dynamics-duplicate"
+#define GIMP_HELP_DYNAMICS_COPY_LOCATION          "gimp-dynamics-copy-location"
+#define GIMP_HELP_DYNAMICS_DELETE                 "gimp-dynamics-delete"
+#define GIMP_HELP_DYNAMICS_REFRESH                "gimp-dynamics-refresh"
+
 #define GIMP_HELP_PATTERN_DIALOG                  "gimp-pattern-dialog"
 #define GIMP_HELP_PATTERN_EDIT                    "gimp-pattern-edit"
 #define GIMP_HELP_PATTERN_OPEN_AS_IMAGE           "gimp-pattern-open-as-image"
diff --git a/app/widgets/widgets-types.h b/app/widgets/widgets-types.h
index 1c42348..7670763 100644
--- a/app/widgets/widgets-types.h
+++ b/app/widgets/widgets-types.h
@@ -108,6 +108,7 @@ typedef struct _GimpToolEditor               GimpToolEditor;
 
 typedef struct _GimpDataFactoryView          GimpDataFactoryView;
 typedef struct _GimpBrushFactoryView         GimpBrushFactoryView;
+typedef struct _GimpDynamicsFactoryView      GimpDynamicsFactoryView;
 typedef struct _GimpPatternFactoryView       GimpPatternFactoryView;
 
 
diff --git a/menus/dialogs-menuitems.xml b/menus/dialogs-menuitems.xml
index 6208afa..79e5b65 100644
--- a/menus/dialogs-menuitems.xml
+++ b/menus/dialogs-menuitems.xml
@@ -18,6 +18,7 @@
   <menuitem action="dialogs-colors" />
   <menuitem action="dialogs-brushes" />
   <menuitem action="dialogs-dynamics-editor" />
+  <menuitem action="dialogs-dynamics" />
   <menuitem action="dialogs-patterns" />
   <menuitem action="dialogs-gradients" />
   <menuitem action="dialogs-palettes" />
diff --git a/menus/dynamics-menu.xml b/menus/dynamics-menu.xml
new file mode 100644
index 0000000..82cd808
--- /dev/null
+++ b/menus/dynamics-menu.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE ui SYSTEM "gtkuimanager.dtd">
+
+<ui>
+  <popup action="dynamics-popup">
+  </popup>
+</ui>



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]