def __init__(self, filename):
        WizardPage.__init__(self)

        # construct ui from glade file
        tree = gtk.glade.XML(self.gladefile, 'wizard_page_1')
        page = tree.get_widget('wizard_page_1')
        page.show()
        self.add(page)
       
        # Set up import object which hold the options and
        # create the connection to the GUI.
        self.importer = importer_registry['ASCII']()
        self.connectors = pwglade.construct_connectors_from_glade_tree(self.importer, tree)
        pwglade.check_in(self.connectors)


        self.header_lines = 0

        def update_header_lines(sender, event):
            try: self.header_lines = int(sender.get_text())
            except: self.header_lines = 0
            self.treeview.queue_draw()

        widget = self.connectors['header_lines'].widget
        widget.connect('focus-out-event', update_header_lines)
        
        # populate treeview
        self.treeview = tree.get_widget('treeview_preview')
        self.prepare_treeview()
        self.populate_preview(filename)
        def add_tab(key, label, object):
            tree = gtk.glade.XML('./Glade/layer_editor.glade', key)
            tabwidget = tree.get_widget(key)

            cf = pwglade.ConnectorFactory()
            connectors = cf.create_from_glade_tree(object, tree)
            pwglade.check_in(connectors)

            nb_main.append_page(tabwidget)
            nb_main.set_tab_label_text(tabwidget, label)

            self.tabs.append(tabwidget)
            self.tablabels.append(label)