2001-11-30 20:59:23 +00:00
|
|
|
-----------------------------------------------------------------------------
|
|
|
|
-- Name: docs/mac/M5mcp2xml.applescript
|
|
|
|
-- Purpose: Automatic export of CodeWarrior 5 projects to XML files
|
|
|
|
-- Author: Gilles Depeyrot
|
|
|
|
-- Modified by:
|
|
|
|
-- Created: 28.11.2001
|
|
|
|
-- RCS-ID: $Id$
|
|
|
|
-- Copyright: (c) 2001 Gilles Depeyrot
|
|
|
|
-- Licence: wxWindows licence
|
|
|
|
-----------------------------------------------------------------------------
|
|
|
|
--
|
|
|
|
-- This AppleScript automatically recurses through the selected folder looking for
|
|
|
|
-- and exporting CodeWarrior projects to xml files.
|
|
|
|
-- To use this script, simply open it with the 'Script Editor' and run it.
|
|
|
|
--
|
|
|
|
|
|
|
|
--
|
|
|
|
-- Suffix used to recognize CodeWarrior project files
|
|
|
|
--
|
|
|
|
property gProjectSuffix : "M5.mcp"
|
|
|
|
|
|
|
|
--
|
|
|
|
-- Project and build success count
|
|
|
|
--
|
|
|
|
set theProjectCount to 0
|
|
|
|
set theProjectSuccessCount to 0
|
|
|
|
|
|
|
|
--
|
|
|
|
-- Ask the user to select the wxWindows samples folder
|
|
|
|
--
|
|
|
|
set theFolder to choose folder with prompt "Select the wxWindows folder"
|
|
|
|
|
|
|
|
ExportProjects(theFolder)
|
|
|
|
|
|
|
|
tell me to display dialog "Exported " & theProjectSuccessCount & " projects out of " & theProjectCount
|
|
|
|
|
|
|
|
--
|
|
|
|
-- ExportProjects
|
|
|
|
--
|
|
|
|
on ExportProjects(inFolder)
|
|
|
|
global theProjectCount, theProjectSuccessCount
|
|
|
|
|
2001-12-02 20:02:17 +00:00
|
|
|
tell application "Finder" to update inFolder
|
|
|
|
|
2001-11-30 20:59:23 +00:00
|
|
|
try
|
|
|
|
tell application "Finder" to set theProject to ((the first file of inFolder whose name ends with gProjectSuffix) as string)
|
|
|
|
on error
|
|
|
|
set theProject to ""
|
|
|
|
end try
|
|
|
|
|
|
|
|
if theProject is not "" then
|
|
|
|
set theProjectCount to theProjectCount + 1
|
|
|
|
|
|
|
|
-- save the current text delimiters
|
|
|
|
set theDelimiters to my text item delimiters
|
|
|
|
|
|
|
|
-- replace the ".mcp" extension with ".xml"
|
|
|
|
set my text item delimiters to "."
|
|
|
|
set theList to (every text item of theProject)
|
|
|
|
set theList to (items 1 thru -2 of theList)
|
|
|
|
set theExport to (theList as string) & ".xml"
|
|
|
|
|
|
|
|
-- restore the text delimiters
|
|
|
|
set my text item delimiters to theDelimiters
|
|
|
|
|
|
|
|
tell application "CodeWarrior IDE 4.0.4"
|
|
|
|
--
|
|
|
|
-- Open the project in CodeWarrior
|
|
|
|
--
|
|
|
|
open theProject
|
|
|
|
--
|
|
|
|
-- Export the selected project
|
|
|
|
--
|
|
|
|
try
|
|
|
|
export project document 1 in theExport
|
|
|
|
set theProjectSuccessCount to theProjectSuccessCount + 1
|
|
|
|
on error number errnum
|
|
|
|
tell me to display dialog "Error " & errnum & " exporting " & theExport
|
|
|
|
end try
|
|
|
|
--
|
|
|
|
-- Close the project
|
|
|
|
--
|
|
|
|
Close Project
|
|
|
|
end tell
|
|
|
|
end if
|
|
|
|
|
2001-12-02 20:02:17 +00:00
|
|
|
tell application "Finder" to set theSubFolders to every folder of inFolder whose name does not end with " Data"
|
2001-11-30 20:59:23 +00:00
|
|
|
repeat with theFolder in theSubFolders
|
|
|
|
ExportProjects(theFolder)
|
|
|
|
end repeat
|
|
|
|
|
|
|
|
end ExportProjects
|