git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60398 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
		
			
				
	
	
		
			50 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			50 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
	
	
	
##############################################################################
 | 
						|
# Name:       misc/scripts/update_doc_utils.py
 | 
						|
# Purpose:    base utilities for others update_doc_*.py scripts
 | 
						|
# Created:    2007-08-1
 | 
						|
# RCS-ID:     $Id: makeunixtags.sh 46320 2007-06-04 11:02:29Z VZ $
 | 
						|
# Copyright:  (c) 2007 Francesco Montorsi
 | 
						|
# Licence:    wxWindows licence
 | 
						|
##############################################################################
 | 
						|
 | 
						|
import sys, os, glob, distutils.file_util
 | 
						|
 | 
						|
DOCS_PATH="../../docs/latex/wx"
 | 
						|
 | 
						|
# Calls the given callback with the name of a documented class, its .tex related file,
 | 
						|
# the content of that .tex file and the number of the line of the relative \class tag,
 | 
						|
# for all documented class in DOCS_PATH. If the callback returns false the processing is stopped.
 | 
						|
# Returns the number of .tex files processed.
 | 
						|
def scanTexFiles(callback):
 | 
						|
    count = 0
 | 
						|
    for f in glob.glob(DOCS_PATH + '/*.tex'):
 | 
						|
        file = open(f, "r")
 | 
						|
        if not file:
 | 
						|
            print "could not open %s" % f
 | 
						|
            continue
 | 
						|
        print "opened file %s" % f
 | 
						|
        count = count + 1
 | 
						|
 | 
						|
        # search \class tags
 | 
						|
        content = file.readlines()
 | 
						|
        classdecl = 0
 | 
						|
        for i in range(len(content)):
 | 
						|
            line = content[i]
 | 
						|
            if "\class{" in line:
 | 
						|
                classdecl = classdecl + 1
 | 
						|
 | 
						|
                # polish the class name
 | 
						|
                classname = line
 | 
						|
                classname = classname[classname.find("\class{"):]
 | 
						|
                classname = classname[classname.find("{")+1:classname.find("}")]
 | 
						|
                print " the class declared is named '%s'" % classname
 | 
						|
 | 
						|
                # process this \class
 | 
						|
                if not callback(classname, f, content, i):
 | 
						|
                    return count
 | 
						|
 | 
						|
        print " file %s contains %d class declarations" % (f, classdecl)
 | 
						|
 | 
						|
    return count
 | 
						|
 |