Index: tablefield.admin.inc
===================================================================
--- tablefield.admin.inc	(revision 0)
+++ tablefield.admin.inc	(revision 0)
@@ -0,0 +1,33 @@
+<?php
+
+/**
+ *
+ * @return <type> 
+ */
+function tablefield_admin_settings()
+{
+  $form = array();
+
+  $form['tablefield_settings'] = array(
+      '#type' => 'fieldset',
+      '#title' => t('Tablefield default settings'),
+      '#collapsible' => TRUE,
+      '#collapsed' => FALSE,
+  );
+  $form['tablefield_settings']['tablefield_maxlength'] = array(
+      '#type' => 'textfield',
+      '#size' => 5,
+      '#title' => t('Maxlength of a field in the grid'),
+      '#default_value' => variable_get('tablefield_maxlength', 128),
+      '#description' => t('maxlength="your value"'),
+  );
+  $form['tablefield_settings']['tablefield_size'] = array(
+      '#type' => 'textfield',
+      '#size' => 5,
+      '#title' => t('Size of a field in the grid'),
+      '#default_value' => variable_get('tablefield_size', 10),
+      '#description' => t('size="your value"'),
+  );
+
+  return system_settings_form($form);
+}
\ No newline at end of file
Index: tablefield.install
===================================================================
--- tablefield.install	(revision 8)
+++ tablefield.install	(working copy)
@@ -20,6 +20,10 @@
 function tablefield_uninstall() {
   drupal_load('module', 'content');
   content_notify('uninstall', 'tablefield');
+
+  // delete the variables
+  variable_del('tablefield_maxlength');
+  variable_del('tablefield_size');
 }
 
 /**
Index: tablefield.module
===================================================================
--- tablefield.module	(revision 8)
+++ tablefield.module	(working copy)
@@ -8,6 +8,29 @@
  */
 
 /**
+ * Implementation of hook_menu().
+ */
+function tablefield_menu() {
+  $items['admin/settings/tablefield'] = array(
+    'title' => t('Tablefield default settings'),
+    'description' => t('Default settings for tablefield.'),
+    'page callback' => 'drupal_get_form',
+    'page arguments' => array('tablefield_admin_settings'),
+    'access arguments' => array('administer tablefield settings'),
+    'file' => 'tablefield.admin.inc',
+  );
+  
+  return $items;
+}
+
+/**
+ * Implementation of hook_perm().
+ */
+function tablefield_perm() {
+    return array('administer tablefield settings');
+}
+
+/**
  * Implementation of hook_theme().
  */
 function tablefield_theme() {
@@ -385,7 +408,8 @@
     for ($ii = 0; $ii < $count_cols; $ii++) {
       $element['tablefield']['cell_' . $i . '_' . $ii] = array(
         '#type' => 'textfield',
-        '#size' => 10,
+        '#maxlength' => variable_get('tablefield_maxlength', 128),
+        '#size' => variable_get('tablefield_size', 10),
         '#attributes' => array('id' => 'tablefield-' . str_replace('_', '-', $element['#field_name']) .'-'. $delta . '-cell-' . $i . '-' . $ii),
         '#default_value' => (empty($field_value)) ? $default_value[$i][$ii] : $field_value,
         '#prefix' => '<td>',
