[java-atk-wrapper] AtkTable: Make add/remove_row/column_selection/header just return false



commit c1141544db69e226020771d4f338e1b6069c0383
Author: Giuseppe <giuseppecapaldo93 gmail com>
Date:   Wed Jul 10 00:50:11 2019 +0200

    AtkTable: Make add/remove_row/column_selection/header just return false
    
    Java does not currently provide a way to do this.

 jni/src/jawtable.c                            | 101 +++++++-------------------
 wrapper/org/GNOME/Accessibility/AtkTable.java |  30 --------
 2 files changed, 25 insertions(+), 106 deletions(-)
---
diff --git a/jni/src/jawtable.c b/jni/src/jawtable.c
index 50d86fc..da6385f 100644
--- a/jni/src/jawtable.c
+++ b/jni/src/jawtable.c
@@ -42,7 +42,9 @@ static gboolean     jaw_table_is_column_selected(AtkTable *table, gint column);
 static gboolean     jaw_table_is_row_selected(AtkTable *table, gint row);
 static gboolean     jaw_table_is_selected(AtkTable *table,gint row, gint column);
 static gboolean     jaw_table_add_row_selection(AtkTable *table, gint row);
+static gboolean     jaw_table_remove_row_selection (AtkTable *table, gint row);
 static gboolean     jaw_table_add_column_selection(AtkTable *table, gint column);
+static gboolean     jaw_table_remove_column_selection (AtkTable *table, gint column);
 static void         jaw_table_set_row_description(AtkTable *table,
                                                   gint row,
                                                   const gchar *description);
@@ -82,7 +84,9 @@ jaw_table_interface_init (AtkTableIface *iface, gpointer data)
   iface->is_row_selected = jaw_table_is_row_selected;
   iface->is_selected = jaw_table_is_selected;
   iface->add_row_selection = jaw_table_add_row_selection;
+  iface->remove_row_selection = jaw_table_remove_row_selection;
   iface->add_column_selection = jaw_table_add_column_selection;
+  iface->remove_column_selection = jaw_table_remove_column_selection;
   iface->set_row_description = jaw_table_set_row_description;
   iface->set_column_description = jaw_table_set_column_description;
   iface->set_row_header = jaw_table_set_row_header;
@@ -168,7 +172,7 @@ jaw_table_get_column_at_index (AtkTable *table, gint index)
   JNIEnv *env = jaw_util_get_jni_env();
   jobject atk_table = (*env)->NewGlobalRef(env, data->atk_table);
   if (!atk_table) {
-    return 0;
+    return -1;
   }
 
   jclass classAtkTable = (*env)->FindClass(env, "org/GNOME/Accessibility/AtkTable");
@@ -187,7 +191,7 @@ jaw_table_get_row_at_index (AtkTable *table, gint index)
   JNIEnv *env = jaw_util_get_jni_env();
   jobject atk_table = (*env)->NewGlobalRef(env, data->atk_table);
   if (!atk_table) {
-    return 0;
+    return -1;
   }
 
   jclass classAtkTable = (*env)->FindClass(env, "org/GNOME/Accessibility/AtkTable");
@@ -511,11 +515,7 @@ jaw_table_is_column_selected (AtkTable *table, gint column)
   jmethodID jmid = (*env)->GetMethodID(env, classAtkTable, "is_column_selected", "(I)Z");
   jboolean jselected = (*env)->CallBooleanMethod(env, atk_table, jmid, (jint)column);
   (*env)->DeleteGlobalRef(env, atk_table);
-
-  if (jselected == JNI_TRUE)
-    return TRUE;
-
-  return FALSE;
+  return jselected;
 }
 
 static gboolean
@@ -533,11 +533,7 @@ jaw_table_is_row_selected (AtkTable *table, gint row)
   jmethodID jmid = (*env)->GetMethodID(env, classAtkTable, "is_row_selected", "(I)Z");
   jboolean jselected = (*env)->CallBooleanMethod(env, atk_table, jmid, (jint)row);
   (*env)->DeleteGlobalRef(env, atk_table);
-
-  if (jselected == JNI_TRUE)
-    return TRUE;
-
-  return FALSE;
+  return jselected;
 }
 
 static gboolean
@@ -556,53 +552,34 @@ jaw_table_is_selected (AtkTable *table, gint row, gint column)
   jboolean jselected = (*env)->CallBooleanMethod(env, atk_table, jmid, (jint)row, (jint)column);
   (*env)->DeleteGlobalRef(env, atk_table);
 
-  if (jselected == JNI_TRUE)
-    return TRUE;
-
-  return FALSE;
+  return jselected;
 }
 
 static gboolean
 jaw_table_add_row_selection(AtkTable *table, gint row)
 {
-  JawObject *jaw_obj = JAW_OBJECT(table);
-  TableData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TABLE);
-  JNIEnv *env = jaw_util_get_jni_env();
-  jobject atk_table = (*env)->NewGlobalRef(env, data->atk_table);
-  if (!atk_table) {
-    return FALSE;
-  }
-
-  jclass classAtkTable = (*env)->FindClass(env, "org/GNOME/Accessibility/AtkTable");
-  jmethodID jmid = (*env)->GetMethodID(env, classAtkTable, "addRowSelection", "(I)Z");
-  jboolean jselected = (*env)->CallBooleanMethod(env, atk_table, jmid, (jint)row);
-  (*env)->DeleteGlobalRef(env, atk_table);
-
-  if (jselected == JNI_TRUE)
-    return TRUE;
+  g_warning("It is impossible to add row selection on AccessibleTable Java Object");
+  return FALSE;
+}
 
+static gboolean
+jaw_table_remove_row_selection (AtkTable *table, gint row)
+{
+  g_warning("It is impossible to remove row selection on AccessibleTable Java Object");
   return FALSE;
 }
 
 static gboolean
 jaw_table_add_column_selection(AtkTable *table, gint column)
 {
-  JawObject *jaw_obj = JAW_OBJECT(table);
-  TableData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TABLE);
-  JNIEnv *env = jaw_util_get_jni_env();
-  jobject atk_table = (*env)->NewGlobalRef(env, data->atk_table);
-  if (!atk_table) {
-    return FALSE;
-  }
-
-  jclass classAtkTable = (*env)->FindClass(env, "org/GNOME/Accessibility/AtkTable");
-  jmethodID jmid = (*env)->GetMethodID(env, classAtkTable, "addColumnSelection", "(I)Z");
-  jboolean jselected = (*env)->CallBooleanMethod(env, atk_table, jmid, (jint)column);
-  (*env)->DeleteGlobalRef(env, atk_table);
-
-  if (jselected == JNI_TRUE)
-    return TRUE;
+  g_warning("It is impossible to add column selection on AccessibleTable Java Object");
+  return FALSE;
+}
 
+static gboolean
+jaw_table_remove_column_selection (AtkTable *table, gint column)
+{
+  g_warning("It is impossible to remove column selection on AccessibleTable Java Object");
   return FALSE;
 }
 
@@ -651,41 +628,13 @@ jaw_table_set_column_description(AtkTable *table, gint column, const gchar *desc
 static void
 jaw_table_set_row_header(AtkTable *table, gint row, AtkObject *header)
 {
-  JawObject *jaw_obj = JAW_OBJECT(table);
-  TableData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TABLE);
-  JNIEnv *env = jaw_util_get_jni_env();
-  jobject atk_table = (*env)->NewGlobalRef(env, data->atk_table);
-  if (!atk_table) {
-    return;
-  }
-
-  jclass classAtkTable = (*env)->FindClass(env, "org/GNOME/Accessibility/AtkTable");
-  jmethodID jmid = (*env)->GetMethodID(env,
-                                       classAtkTable,
-                                       "setRowHeader",
-                                       "(ILjavax/accessibility/AccessibleTable;)V");
-  (*env)->CallVoidMethod(env, atk_table, jmid, (jint)row, (jobject)header);
-  (*env)->DeleteGlobalRef(env, atk_table);
+  g_warning("It is impossible to set a single row header on AccessibleTable Java Object");
 }
 
 static void
 jaw_table_set_column_header(AtkTable *table, gint column, AtkObject *header)
 {
-  JawObject *jaw_obj = JAW_OBJECT(table);
-  TableData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TABLE);
-  JNIEnv *env = jaw_util_get_jni_env();
-  jobject atk_table = (*env)->NewGlobalRef(env, data->atk_table);
-  if (!atk_table) {
-    return;
-  }
-
-  jclass classAtkTable = (*env)->FindClass(env, "org/GNOME/Accessibility/AtkTable");
-  jmethodID jmid = (*env)->GetMethodID(env,
-                                       classAtkTable,
-                                       "setColumnHeader",
-                                       "(ILjavax/accessibility/AccessibleTable;)V");
-  (*env)->CallVoidMethod(env, atk_table, jmid, (jint)column, (jobject)header);
-  (*env)->DeleteGlobalRef(env, atk_table);
+  g_warning("It is impossible to set a single column header on AccessibleTable Java Object");
 }
 
 static void
diff --git a/wrapper/org/GNOME/Accessibility/AtkTable.java b/wrapper/org/GNOME/Accessibility/AtkTable.java
index 404a0f9..32094ee 100644
--- a/wrapper/org/GNOME/Accessibility/AtkTable.java
+++ b/wrapper/org/GNOME/Accessibility/AtkTable.java
@@ -160,16 +160,6 @@ public class AtkTable {
                }, null);
        }
 
-       /**
-        *
-        * @param column an int representing a column in table
-        * @param table an AccessibleTable object
-        */
-       public void setColumnHeader (int column, AccessibleTable table) {
-               // FIXME: this isn't using column for anything
-               AtkUtil.invokeInSwing( () -> { acc_table.setAccessibleColumnHeader(table); });
-       }
-
        public AccessibleContext get_row_header (int row) {
                return AtkUtil.invokeInSwing ( () -> {
                        AccessibleTable accessibleTable = acc_table.getAccessibleRowHeader();
@@ -182,10 +172,6 @@ public class AtkTable {
                }, null);
        }
 
-       public void setRowHeader (int row, AccessibleTable table) {
-               AtkUtil.invokeInSwing( () -> { acc_table.setAccessibleRowHeader(table); });
-       }
-
        public AccessibleContext get_summary () {
                return AtkUtil.invokeInSwing ( () -> {
                        Accessible accessible = acc_table.getAccessibleSummary();
@@ -224,20 +210,4 @@ public class AtkTable {
        public boolean is_selected (int row, int column) {
                return AtkUtil.invokeInSwing ( () -> { return acc_table.isAccessibleSelected(row, column); } 
,false);
        }
-
-       public boolean addColumnSelection (int column) {
-               return false;
-       }
-
-       public boolean addRowSelection (int row) {
-               return false;
-       }
-
-       public boolean remove_column_selection (int column) {
-               return false;
-       }
-
-       public boolean remove_row_selection (int row) {
-               return false;
-       }
 }


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