Added initial version of Jabber Client demo application.
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/chat/Chat.st Tue Sep 24 00:11:53 2013 +0100
@@ -0,0 +1,298 @@
+"{ Package: 'stx:libjava/examples/chat' }"
+
+ApplicationModel subclass:#Chat
+ instanceVariableNames:'client'
+ classVariableNames:''
+ poolDictionaries:''
+ category:'stx-libjava-examples-chat'
+!
+
+!Chat class methodsFor:'interface specs'!
+
+windowSpec
+ "This resource specification was automatically generated
+ by the UIPainter of ST/X."
+
+ "Do not manually edit this!! If it is corrupted,
+ the UIPainter may not be able to read the specification."
+
+ "
+ UIPainter new openOnClass:Chat andSelector:#windowSpec
+ Chat new openInterface:#windowSpec
+ Chat open
+ "
+
+ <resource: #canvas>
+
+ ^
+ #(FullSpec
+ name: windowSpec
+ window:
+ (WindowSpec
+ label: 'ChatStartup'
+ name: 'ChatStartup'
+ min: (Point 10 10)
+ bounds: (Rectangle 0 0 300 300)
+ menu: mainMenu
+ )
+ component:
+ (SpecCollection
+ collection: (
+ (ViewSpec
+ name: 'Box2'
+ layout: (LayoutFrame 0 0 -26 1 0 1 0 1)
+ level: 1
+ component:
+ (SpecCollection
+ collection: (
+ (LabelSpec
+ label: 'InfoLabel'
+ name: 'Label2'
+ layout: (LayoutFrame 0 0 -26 1 -1 1 0 1)
+ level: -1
+ translateLabel: true
+ labelChannel: infoLabelHolder
+ adjust: left
+ )
+ )
+
+ )
+ )
+ )
+
+ )
+ )
+! !
+
+!Chat class methodsFor:'menu specs'!
+
+mainMenu
+ "This resource specification was automatically generated
+ by the MenuEditor of ST/X."
+
+ "Do not manually edit this!! If it is corrupted,
+ the MenuEditor may not be able to read the specification."
+
+
+ "
+ MenuEditor new openOnClass:Chat andSelector:#mainMenu
+ (Menu new fromLiteralArrayEncoding:(Chat mainMenu)) startUp
+ "
+
+ <resource: #menu>
+
+ ^
+ #(Menu
+ (
+ (MenuItem
+ label: 'Buddies'
+ submenu:
+ (Menu
+ (
+ (MenuItem
+ enabled: isConnected
+ label: 'Chat with...'
+ itemValue: menuChatWith
+ )
+ (MenuItem
+ label: '-'
+ )
+ (MenuItem
+ enabled: isDisconnected
+ label: 'Connect...'
+ itemValue: menuConnect
+ )
+ (MenuItem
+ enabled: isConnected
+ label: 'Disconnect'
+ itemValue: menuDisconnect
+ )
+ (MenuItem
+ label: '-'
+ )
+ (MenuItem
+ label: 'Exit'
+ itemValue: closeRequest
+ )
+ )
+ nil
+ nil
+ )
+ )
+ (MenuItem
+ label: 'Help'
+ startGroup: right
+ submenu:
+ (Menu
+ (
+ (MenuItem
+ label: 'Documentation'
+ itemValue: openDocumentation
+ )
+ (MenuItem
+ label: '-'
+ )
+ (MenuItem
+ label: 'About this Application...'
+ itemValue: openAboutThisApplication
+ )
+ )
+ nil
+ nil
+ )
+ )
+ )
+ nil
+ nil
+ )
+
+ "Modified: / 23-09-2013 / 23:12:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+toolbarMenu
+ "This resource specification was automatically generated by the CodeGeneratorTool."
+
+ "Do not manually edit this!! If it is corrupted,
+ the MenuEditor may not be able to read the specification."
+
+ "
+ MenuEditor new openOnClass:ChatStartup andSelector:#toolbarMenu
+ "
+
+ <resource: #menu>
+
+ ^ #(Menu ((MenuItem label: 'Reload' itemValue: menuReload isButton: true labelImage: (ResourceRetriever ToolbarIconLibrary reload24x24Icon))) nil nil)
+! !
+
+!Chat methodsFor:'initialization & release'!
+
+closeDownViews
+ "This is a hook method generated by the Browser/CodeGeneratorTool.
+ It will be invoked when your app/dialog-window is really closed.
+ See also #closeDownViews, which is invoked before and may suppress the close
+ or ask the user for confirmation."
+
+ "/ change the code below as required ...
+ "/ This should cleanup any leftover resources
+ "/ (for example, temporary files)
+ "/ super closeRequest will initiate the closeDown
+
+ "/ add your code here
+
+ "/ do not remove the one below ...
+ ^ super closeDownViews
+!
+
+postBuildWith:aBuilder
+ "This is a hook method generated by the Browser/CodeGeneratorTool.
+ It will be invoked during the initialization of your app/dialog,
+ after all of the visual components have been built,
+ but BEFORE the top window is made visible.
+ Add any app-specific actions here (reading files, setting up values etc.)
+ See also #postOpenWith:, which is invoked after opening."
+
+ "/ add any code here ...
+
+ ^ super postBuildWith:aBuilder
+!
+
+postOpenWith:aBuilder
+ "This is a hook method generated by the Browser/CodeGeneratorTool.
+ It will be invoked right after the applications window has been opened.
+ Add any app-specific actions here (starting background processes etc.).
+ See also #postBuildWith:, which is invoked before opening."
+
+ "/ add any code here ...
+
+ ^ super postOpenWith:aBuilder
+! !
+
+!Chat methodsFor:'menu actions'!
+
+menuChatWith
+ | id |
+
+ id := Dialog request: 'Jabber ID to chat with' initialAnswer:'janfrog@jabber.cz/neso'.
+ id notEmptyOrNil ifTrue:[
+ self menuChatWith: id.
+ ]
+
+ "Created: / 23-09-2013 / 22:47:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+menuChatWith:id
+
+ ChatWindow new
+ buddy: id;
+ client: client;
+ open.
+
+ "Created: / 23-09-2013 / 22:47:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+menuConnect
+ | dialog server username password |
+
+ server := 'jabber.cz' asValue.
+ username := 'janfrog' asValue.
+ password := nil asValue.
+
+ dialog := Dialog new.
+ dialog addLabelledInputField: 'Server' adjust: #left on: server tabable: true separateAtX: 0.3.
+ dialog addLabelledInputField: 'Username' adjust: #left on: username tabable: true separateAtX: 0.3.
+ (dialog addLabelledInputField: 'Password' adjust: #left on: password tabable: true separateAtX: 0.3)
+ bePassword.
+ dialog addOkButton.
+ dialog addAbortButton.
+ dialog open.
+ dialog accepted ifFalse:[ ^ self ].
+
+ client := JAVA stx libjava examples chat SimpleClient new.
+ client connect: server value username: username value password: password value.
+
+ "Created: / 23-09-2013 / 23:02:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+menuDisconnect
+ client disconnect.
+ client := nil.
+
+ "Created: / 23-09-2013 / 23:02:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+openAboutThisApplication
+ "This method was generated by the Browser/CodeGeneratorTool.
+ It will be invoked when the menu-item 'help-about' is selected."
+
+ "/ could open a customized aboutBox here ...
+ super openAboutThisApplication
+!
+
+openDocumentation
+ "This method was generated by the Browser/CodeGeneratorTool.
+ It will be invoked when the menu-item 'help-documentation' is selected."
+
+ "/ change below as required ...
+
+ "/ to open an HTML viewer on some document (under 'doc/online/<language>/' ):
+ self openDocumentationFile:'TOP.html'.
+
+ "/ add application-specific help files under the 'doc/online/<language>/help/appName'
+ "/ directory, and open a viewer with:
+ "/ self openDocumentationFile:'help/<MyApplication>/TOP.html'.
+! !
+
+!Chat methodsFor:'menu-queries'!
+
+isConnected
+ ^ client notNil and:[client isConnected].
+
+ "Created: / 23-09-2013 / 23:03:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+isDisconnected
+ ^ self isConnected not
+
+ "Created: / 24-09-2013 / 00:09:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/chat/ChatStart.st Tue Sep 24 00:11:53 2013 +0100
@@ -0,0 +1,84 @@
+"{ Package: 'stx:libjava/examples/chat' }"
+
+StandaloneStartup subclass:#ChatStart
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'stx-libjava-examples-chat'
+!
+
+!ChatStart class methodsFor:'constants & defaults'!
+
+applicationRegistryPath
+ "the key under which this application stores its process ID in the registry
+ as a collection of path-components.
+ i.e. if #('foo' 'bar' 'baz') is returned here, the current applications ID will be stored
+ in HKEY_CURRENT_USER\Software\foo\bar\baz\CurrentID.
+ (would also be used as a relative path for a temporary lock file under unix).
+ Used to detect if another instance of this application is already running."
+
+ ^ #('stx' 'ChatStartup')
+!
+
+applicationUUID
+ "answer an application-specific unique uuid.
+ This is used as the name of some exclusive OS-resource, which is used to find out,
+ if another instance of this application is already running.
+ Under win32, a mutex is used; under unix, an exclusive file in the tempDir could be used.
+ If redefined, please return a real UUID (i.e. UUID fromString:'.....') and not a string or
+ similar possibly conflicting identifier.
+ You can paste a fresh worldwide unique id via the editor's more-misc-paste UUID menuFunction."
+
+ ^ UUID fromString:'e95f2d30-2496-11e3-9a86-606720e43e2c'
+! !
+
+!ChatStart class methodsFor:'startup'!
+
+main:argv
+ "main entry; argv is the array of command arguments (as array of words from space-separated command line).
+ Parse arguments, and proceed to the real work function"
+
+ "you may want to put those into instvars, in order to be accessable from the doRealWork function"
+ |aArgs bArgs cOption fileArgs helpOption|
+
+ aArgs := OrderedCollection new.
+ bArgs := OrderedCollection new.
+ fileArgs := OrderedCollection new.
+ cOption := helpOption := false.
+
+ (GetOpt new)
+ at:$h
+ put:[:opt | helpOption := true];
+ at:$?
+ put:[:arg | self usage. Smalltalk exit:0];
+ default:[:arg | fileArgs add:arg];
+ parse:argv.
+
+ helpOption ifTrue:[
+ self usage.
+ ] ifFalse:[
+ self realMain:argv.
+ ].
+ "/ do not exit here; caller will go into event loop when returning
+
+ "Modified: / 24-09-2013 / 00:10:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+realMain: args
+ "opens the application"
+
+ JavaVM booted ifFalse:[
+ Java flushAllJavaResources.
+ Java initialize.
+ JavaVM initializeVM.
+ ].
+ Chat open
+
+ "Modified: / 24-09-2013 / 00:11:05 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+usage
+ Stderr nextPutLine:'usage: ',self applicationName,' [options...]'.
+ Stderr nextPutLine:' -h .................. output this message'.
+! !
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/chat/ChatWindow.st Tue Sep 24 00:11:53 2013 +0100
@@ -0,0 +1,199 @@
+"{ Package: 'stx:libjava/examples/chat' }"
+
+ApplicationModel subclass:#ChatWindow
+ instanceVariableNames:'client reader conversationHolder buddyHolder messageHolder'
+ classVariableNames:''
+ poolDictionaries:''
+ category:'stx-libjava-examples-chat'
+!
+
+
+!ChatWindow class methodsFor:'interface specs'!
+
+windowSpec
+ "This resource specification was automatically generated
+ by the UIPainter of ST/X."
+
+ "Do not manually edit this!! If it is corrupted,
+ the UIPainter may not be able to read the specification."
+
+ "
+ UIPainter new openOnClass:ChatWindow andSelector:#windowSpec
+ ChatWindow new openInterface:#windowSpec
+ ChatWindow open
+ "
+
+ <resource: #canvas>
+
+ ^
+ #(FullSpec
+ name: windowSpec
+ window:
+ (WindowSpec
+ label: 'NewApplication'
+ name: 'NewApplication'
+ bounds: (Rectangle 0 0 592 525)
+ )
+ component:
+ (SpecCollection
+ collection: (
+ (LabelSpec
+ label: 'Buddy...'
+ name: 'Label1'
+ layout: (LayoutFrame 0 0 0 0 0 1 30 0)
+ translateLabel: true
+ labelChannel: buddyHolder
+ )
+ (TextEditorSpec
+ name: 'TextEditor1'
+ layout: (LayoutFrame 0 0 30 0 0 1 -30 1)
+ model: conversationHolder
+ hasHorizontalScrollBar: true
+ hasVerticalScrollBar: true
+ hasKeyboardFocusInitially: false
+ )
+ (InputFieldSpec
+ name: 'EntryField1'
+ layout: (LayoutFrame 0 0 -25 1 0 1 0 1)
+ model: messageHolder
+ acceptOnLeave: false
+ acceptOnReturn: true
+ acceptOnTab: false
+ acceptOnLostFocus: false
+ acceptOnPointerLeave: false
+ valueChangeCallBackSelector: send
+ )
+ )
+
+ )
+ )
+! !
+
+!ChatWindow methodsFor:'accessing'!
+
+buddy: aString
+ self buddyHolder value: aString
+
+ "Created: / 23-09-2013 / 23:27:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+client: jclient
+ client := jclient.
+
+ "Created: / 23-09-2013 / 23:31:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!ChatWindow methodsFor:'actions'!
+
+receive: message
+
+ conversationHolder value:
+ (conversationHolder value , Character cr, message getFrom , ': ', message getBody)
+
+ "Created: / 23-09-2013 / 23:34:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+send
+ | m |
+
+ m := JAVA org jivesoftware smack packet Message new.
+ m setTo: self buddyHolder value.
+ m setBody: self messageHolder value.
+ client send: m.
+ conversationHolder value:
+ (conversationHolder value , Character cr, 'me: ', self messageHolder value).
+ self messageHolder setValue: ''.
+
+ "Created: / 23-09-2013 / 23:30:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!ChatWindow methodsFor:'aspects'!
+
+buddyHolder
+ <resource: #uiAspect>
+
+ "automatically generated by UIPainter ..."
+
+ "*** the code below creates a default model when invoked."
+ "*** (which may not be the one you wanted)"
+ "*** Please change as required and accept it in the browser."
+ "*** (and replace this comment by something more useful ;-)"
+
+ buddyHolder isNil ifTrue:[
+ buddyHolder := ValueHolder new.
+"/ if your app needs to be notified of changes, uncomment one of the lines below:
+"/ buddyHolder addDependent:self.
+"/ buddyHolder onChangeSend:#buddyHolderChanged to:self.
+ ].
+ ^ buddyHolder.
+!
+
+conversationHolder
+ <resource: #uiAspect>
+
+ "automatically generated by UIPainter ..."
+
+ "*** the code below creates a default model when invoked."
+ "*** (which may not be the one you wanted)"
+ "*** Please change as required and accept it in the browser."
+ "*** (and replace this comment by something more useful ;-)"
+
+ conversationHolder isNil ifTrue:[
+ conversationHolder := '' asValue.
+"/ if your app needs to be notified of changes, uncomment one of the lines below:
+"/ conversationHolder addDependent:self.
+"/ conversationHolder onChangeSend:#conversationHolderChanged to:self.
+ ].
+ ^ conversationHolder.
+!
+
+messageHolder
+ <resource: #uiAspect>
+
+ "automatically generated by UIPainter ..."
+
+ "*** the code below creates a default model when invoked."
+ "*** (which may not be the one you wanted)"
+ "*** Please change as required and accept it in the browser."
+ "*** (and replace this comment by something more useful ;-)"
+
+ messageHolder isNil ifTrue:[
+ messageHolder := ValueHolder new.
+"/ if your app needs to be notified of changes, uncomment one of the lines below:
+"/ messageHolder addDependent:self.
+"/ messageHolder onChangeSend:#messageHolderChanged to:self.
+ ].
+ ^ messageHolder.
+! !
+
+!ChatWindow methodsFor:'hooks'!
+
+closeDownViews
+ reader terminate.
+ super closeDownViews.
+
+ "Created: / 23-09-2013 / 23:35:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+commonPostOpen
+ reader := [
+ [
+ | m |
+
+ client await.
+ [ (m := client receive: self buddyHolder value) notNil ] whileTrue:[
+ self receive: m.
+ ].
+ ] loop.
+ ] fork.
+
+ "Created: / 23-09-2013 / 23:34:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!ChatWindow class methodsFor:'documentation'!
+
+version_HG
+
+ ^ '$Changeset: <not expanded> $'
+! !
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/chat/Make.proto Tue Sep 24 00:11:53 2013 +0100
@@ -0,0 +1,479 @@
+# $Header$
+#
+# automagically generated from the projectDefinition: stx_libjava_examples_chat.
+#
+# -------------- no need to change anything below ----------
+#
+# This makefile generates some standalone demo applications
+#
+# make
+# generates chat
+#
+
+TOP=../../..
+INCLUDE_TOP=$(TOP)/..
+
+# set to a dummy file name (like FORCE=@@@FORCE-BUILD@@@) to force the build of prereq packages
+FORCE=
+.PHONY: $(FORCE)
+
+PACKAGE=stx:libjava/examples/chat
+SUBDIRS=
+SUPPRESS_LOCAL_ABBREVS="yes"
+NOAUTOLOAD=1
+NOSUBAUTOLOAD=1
+
+LOCALINCLUDES= -I$(INCLUDE_TOP)/stx/libbasic -I$(INCLUDE_TOP)/stx/libview2
+LOCALDEFINES=
+GLOBALDEFINES=
+MAIN_DEFINES=-DIGNORE_IMAGE -DNO_DISPLAY
+
+RCSSOURCES=Make.proto *.st
+LINKSOURCES=Make.proto *.st
+
+DELIVERBINARIES=
+
+LIBNAME=libstx_libjava_examples_chat
+STCLOCALOPT='-package=$(PACKAGE)' -I. -headerDir=. $(LOCALINCLUDES) $(STCLOCALOPTIMIZATIONS) $(STCWARNINGS) $(LOCALDEFINES) -headerDir=. -varPrefix=$(LIBNAME)
+
+
+# ********** OPTIONAL: MODIFY the next line ***
+# additional C-libraries that should be pre-linked with the class-objects
+LD_OBJ_LIBS=
+LOCAL_SHARED_LIBS=
+
+
+# ********** OPTIONAL: MODIFY the next line ***
+# additional C targets or libraries should be added below
+LOCAL_EXTRA_TARGETS=
+
+OBJS= $(COMMON_OBJS) $(UNIX_OBJS)
+
+
+
+
+
+LIBLIST = $(REQUIRED_LIBS)
+
+# required libs:
+#
+
+REQUIRED_LIBS= libstx_libbasic \
+ libstx_libbasic2 \
+ libstx_libcomp \
+ libstx_libbasic3 \
+ libstx_libview \
+ libstx_libui \
+ libstx_libview2 \
+ libstx_goodies_sunit \
+ libstx_libwidg \
+ libstx_libhtml \
+ libstx_libwidg2 \
+ libstx_libtool \
+ libstx_libjava \
+
+
+REQUIRED_LIBOBJS= ../../../libbasic/libstx_libbasic$(O_EXT) \
+ ../../../libbasic2/libstx_libbasic2$(O_EXT) \
+ ../../../libcomp/libstx_libcomp$(O_EXT) \
+ ../../../libbasic3/libstx_libbasic3$(O_EXT) \
+ ../../../libview/libstx_libview$(O_EXT) \
+ ../../../libui/libstx_libui$(O_EXT) \
+ ../../../libview2/libstx_libview2$(O_EXT) \
+ ../../../goodies/sunit/libstx_goodies_sunit$(O_EXT) \
+ ../../../libwidg/libstx_libwidg$(O_EXT) \
+ ../../../libhtml/libstx_libhtml$(O_EXT) \
+ ../../../libwidg2/libstx_libwidg2$(O_EXT) \
+ ../../../libtool/libstx_libtool$(O_EXT) \
+ ../..//libstx_libjava$(O_EXT) \
+
+
+REQUIRED_LINK_LIBOBJS= libstx_libbasic$(O_EXT) \
+ libstx_libbasic2$(O_EXT) \
+ libstx_libcomp$(O_EXT) \
+ libstx_libbasic3$(O_EXT) \
+ libstx_libview$(O_EXT) \
+ libstx_libui$(O_EXT) \
+ libstx_libview2$(O_EXT) \
+ libstx_goodies_sunit$(O_EXT) \
+ libstx_libwidg$(O_EXT) \
+ libstx_libhtml$(O_EXT) \
+ libstx_libwidg2$(O_EXT) \
+ libstx_libtool$(O_EXT) \
+ libstx_libjava$(O_EXT) \
+
+
+REQUIRED_SUPPORT_DIRS=RESOURCEFILES
+
+SUBPROJECT_LIBS=
+
+
+target: ALL
+
+all:: prereq ALL_NP
+
+# like ALL, but not prereqs
+ALL_NP:: exe $(SUBPROJECT_LIBS) $(REQUIRED_SUPPORT_DIRS) $(SETUP_RULE)
+
+exe: chat
+
+chat: $(APP_DIRS_TO_MAKE) $(APP_LIBOBJS) $(REQUIRED_LIBOBJS) $(OBJS)
+ $(MAKE) link_chat
+
+
+link_chat:
+ $(MAKE) GUI_APPLICATION \
+ TARGET=chat \
+ APPLICATION_CLASSES="$(COMMON_CLASSES) $(UNIX_CLASSES)" \
+ APPLICATION_OBJS="$(OBJS)" \
+ APPLICATION_LIBLIST="$(REQUIRED_LIBS)" \
+ APPLICATION_LIBOBJS="$(REQUIRED_LIBOBJS)" \
+ APPLICATION_LINK_LIBOBJS="$(REQUIRED_LINK_LIBOBJS)" \
+ STARTUP_CLASS="ChatStart" \
+ STARTUP_SELECTOR="start" \
+ MAIN_DEFINES="-DIGNORE_IMAGE -DNO_DISPLAY"
+
+# build all mandatory prerequisite packages (containing superclasses) for this package
+prereq:
+ $(MAKE) FORCE=@@@FORCE-BUILD@@@ $(REQUIRED_LIBOBJS)
+
+#
+# a self installable delivery
+#
+# backward compatible fallback
+setup::
+ @if test -d autopackage; then \
+ makepackage; \
+ else \
+ echo "Error: make setup not yet available in this unix"; \
+ exit 1; \
+ fi
+
+#
+# for linux, this uses autopackage
+#
+setup_linux:
+ @if test -d autopackage; then \
+ makepackage; \
+ else \
+ echo "Error: missing autopackage directory"; \
+ exit 1; \
+ fi
+
+#
+# for mac, a dmg is generated
+#
+setup_macosx: "Chat_dmg"
+ hdiutil create -fs HFSX -layout SPUD "Chat.dmg" -srcfolder "Chat_dmg" -format UDZO -volname "Chat" -quiet
+
+"Chat_dmg":
+ @-rm -rf "Chat_dmg"
+ @-mkdir "Chat_dmg"
+ @-mkdir "Chat_dmg/Chat.app"
+ @-mkdir "Chat_dmg/Chat.app/Contents"
+ @-mkdir "Chat_dmg/Chat.app/Contents/MacOS"
+ cp "chat" "Chat_dmg/Chat.app/Contents/MacOS/Chat"
+ @-mkdir Chat_dmg/Chat.app/Contents/MacOS/.
+ -cp -r *.so "Chat_dmg/Chat.app/Contents/MacOS/."
+ -cp -r symbols.stc "Chat_dmg/Chat.app/Contents/MacOS/."
+ -cp -r *.stx "Chat_dmg/Chat.app/Contents/MacOS/."
+ -cp -r *.rc "Chat_dmg/Chat.app/Contents/MacOS/."
+ -cp -r resources "Chat_dmg/Chat.app/Contents/MacOS/."
+
+
+SOURCEFILES: chat_SOURCES \
+ stx_SOURCES
+
+
+
+
+RESOURCEFILES: chat_RESOURCES chat_BITMAPS \
+ stx_RESOURCES stx_STYLES stx_BITMAPS
+
+
+chat_RESOURCES:
+ mkdir -p resources/stx/libjava/examples/chat
+ -cp ../resources/*.rs ../resources/*.style resources/stx/libjava/examples/chat/..
+
+chat_BITMAPS:
+ mkdir -p resources/stx/libjava/examples/chat/bitmaps
+ -cp *.ico *.gif *.png resources/stx/libjava/examples/chat/bitmaps
+
+
+
+stx_RESOURCES: \
+ keyboard.rc \
+ keyboardMacros.rc \
+ display.rc \
+ libbasic_RESOURCES \
+ libview_RESOURCES \
+ libtool_RESOURCES \
+ libtool2_RESOURCES
+
+keyboard.rc: $(TOP)/projects/smalltalk/keyboard.rc
+ cp $(TOP)/projects/smalltalk/keyboard.rc .
+
+keyboardMacros.rc: $(TOP)/projects/smalltalk/keyboardMacros.rc
+ cp $(TOP)/projects/smalltalk/keyboardMacros.rc .
+
+display.rc: $(TOP)/projects/smalltalk/display.rc
+ cp $(TOP)/projects/smalltalk/display.rc .
+
+stx_STYLES:
+ mkdir -p resources/stx/libview
+ mkdir -p resources/stx/libview/styles
+ cp $(TOP)/libview/styles/*.common resources/stx/libview/styles
+ cp $(TOP)/libview/styles/*.style resources/stx/libview/styles
+
+stx_BITMAPS: \
+ libwidg_BITMAPS
+
+libwidg_BITMAPS:
+ mkdir -p resources/stx/libwidg/bitmaps
+ -cp $(TOP)/libwidg/bitmaps/*.* resources/stx/libwidg/bitmaps
+
+libbasic_RESOURCES:
+ mkdir -p resources/stx/libbasic
+ -cp $(TOP)/libbasic/resources/*.* resources/stx/libbasic
+
+libtool_RESOURCES:
+ mkdir -p resources/stx/libtool
+ -cp $(TOP)/libtool/resources/*.* resources/stx/libtool
+
+libtool2_RESOURCES:
+ mkdir -p resources/stx/libtool2
+ -cp $(TOP)/libtool2/resources/*.* resources/stx/libtool2
+
+libview_RESOURCES:
+ mkdir -p resources/stx/libview
+ -cp $(TOP)/libview/resources/*.* resources/stx/libview
+
+libview2_RESOURCES:
+ mkdir -p resources/stx/libview2
+ -cp $(TOP)/libview2/resources/*.* resources/stx/libview2
+
+bitmaps:
+ mkdir -p bitmaps
+
+doc:
+ mkdir -p doc
+
+
+
+libstx_libbasic.so: ../../../libbasic/libstx_libbasic.so
+ ln -sf ../../../libbasic/libstx_libbasic.so .
+
+../../../libbasic/libstx_libbasic.so: ../../../libbasic/makefile $(FORCE)
+ @if [ -f "../../../libbasic/.NOSOURCE" ]; then \
+ echo "skip make in ../../../libbasic (no source)"; \
+ else \
+ cd ../../../libbasic && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES) "; \
+ fi
+
+../../../libbasic/makefile: ../../../libbasic/Make.proto
+ $(TOP)/rules/stmkmf --cd ../../../libbasic
+
+libstx_libbasic2.so: ../../../libbasic2/libstx_libbasic2.so
+ ln -sf ../../../libbasic2/libstx_libbasic2.so .
+
+../../../libbasic2/libstx_libbasic2.so: ../../../libbasic2/makefile $(FORCE)
+ @if [ -f "../../../libbasic2/.NOSOURCE" ]; then \
+ echo "skip make in ../../../libbasic2 (no source)"; \
+ else \
+ cd ../../../libbasic2 && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES) "; \
+ fi
+
+../../../libbasic2/makefile: ../../../libbasic2/Make.proto
+ $(TOP)/rules/stmkmf --cd ../../../libbasic2
+
+libstx_libcomp.so: ../../../libcomp/libstx_libcomp.so
+ ln -sf ../../../libcomp/libstx_libcomp.so .
+
+../../../libcomp/libstx_libcomp.so: ../../../libcomp/makefile $(FORCE)
+ @if [ -f "../../../libcomp/.NOSOURCE" ]; then \
+ echo "skip make in ../../../libcomp (no source)"; \
+ else \
+ cd ../../../libcomp && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES) "; \
+ fi
+
+../../../libcomp/makefile: ../../../libcomp/Make.proto
+ $(TOP)/rules/stmkmf --cd ../../../libcomp
+
+libstx_libbasic3.so: ../../../libbasic3/libstx_libbasic3.so
+ ln -sf ../../../libbasic3/libstx_libbasic3.so .
+
+../../../libbasic3/libstx_libbasic3.so: ../../../libbasic3/makefile $(FORCE)
+ @if [ -f "../../../libbasic3/.NOSOURCE" ]; then \
+ echo "skip make in ../../../libbasic3 (no source)"; \
+ else \
+ cd ../../../libbasic3 && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES) "; \
+ fi
+
+../../../libbasic3/makefile: ../../../libbasic3/Make.proto
+ $(TOP)/rules/stmkmf --cd ../../../libbasic3
+
+libstx_libview.so: ../../../libview/libstx_libview.so
+ ln -sf ../../../libview/libstx_libview.so .
+
+../../../libview/libstx_libview.so: ../../../libview/makefile $(FORCE)
+ @if [ -f "../../../libview/.NOSOURCE" ]; then \
+ echo "skip make in ../../../libview (no source)"; \
+ else \
+ cd ../../../libview && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES) "; \
+ fi
+
+../../../libview/makefile: ../../../libview/Make.proto
+ $(TOP)/rules/stmkmf --cd ../../../libview
+
+libstx_libui.so: ../../../libui/libstx_libui.so
+ ln -sf ../../../libui/libstx_libui.so .
+
+../../../libui/libstx_libui.so: ../../../libui/makefile $(FORCE)
+ @if [ -f "../../../libui/.NOSOURCE" ]; then \
+ echo "skip make in ../../../libui (no source)"; \
+ else \
+ cd ../../../libui && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES) "; \
+ fi
+
+../../../libui/makefile: ../../../libui/Make.proto
+ $(TOP)/rules/stmkmf --cd ../../../libui
+
+libstx_libview2.so: ../../../libview2/libstx_libview2.so
+ ln -sf ../../../libview2/libstx_libview2.so .
+
+../../../libview2/libstx_libview2.so: ../../../libview2/makefile $(FORCE)
+ @if [ -f "../../../libview2/.NOSOURCE" ]; then \
+ echo "skip make in ../../../libview2 (no source)"; \
+ else \
+ cd ../../../libview2 && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES) "; \
+ fi
+
+../../../libview2/makefile: ../../../libview2/Make.proto
+ $(TOP)/rules/stmkmf --cd ../../../libview2
+
+libstx_goodies_sunit.so: ../../../goodies/sunit/libstx_goodies_sunit.so
+ ln -sf ../../../goodies/sunit/libstx_goodies_sunit.so .
+
+../../../goodies/sunit/libstx_goodies_sunit.so: ../../../goodies/sunit/makefile $(FORCE)
+ @if [ -f "../../../goodies/sunit/.NOSOURCE" ]; then \
+ echo "skip make in ../../../goodies/sunit (no source)"; \
+ else \
+ cd ../../../goodies/sunit && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES) "; \
+ fi
+
+../../../goodies/sunit/makefile: ../../../goodies/sunit/Make.proto
+ $(TOP)/rules/stmkmf --cd ../../../goodies/sunit
+
+libstx_libwidg.so: ../../../libwidg/libstx_libwidg.so
+ ln -sf ../../../libwidg/libstx_libwidg.so .
+
+../../../libwidg/libstx_libwidg.so: ../../../libwidg/makefile $(FORCE)
+ @if [ -f "../../../libwidg/.NOSOURCE" ]; then \
+ echo "skip make in ../../../libwidg (no source)"; \
+ else \
+ cd ../../../libwidg && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES) "; \
+ fi
+
+../../../libwidg/makefile: ../../../libwidg/Make.proto
+ $(TOP)/rules/stmkmf --cd ../../../libwidg
+
+libstx_libhtml.so: ../../../libhtml/libstx_libhtml.so
+ ln -sf ../../../libhtml/libstx_libhtml.so .
+
+../../../libhtml/libstx_libhtml.so: ../../../libhtml/makefile $(FORCE)
+ @if [ -f "../../../libhtml/.NOSOURCE" ]; then \
+ echo "skip make in ../../../libhtml (no source)"; \
+ else \
+ cd ../../../libhtml && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES) "; \
+ fi
+
+../../../libhtml/makefile: ../../../libhtml/Make.proto
+ $(TOP)/rules/stmkmf --cd ../../../libhtml
+
+libstx_libwidg2.so: ../../../libwidg2/libstx_libwidg2.so
+ ln -sf ../../../libwidg2/libstx_libwidg2.so .
+
+../../../libwidg2/libstx_libwidg2.so: ../../../libwidg2/makefile $(FORCE)
+ @if [ -f "../../../libwidg2/.NOSOURCE" ]; then \
+ echo "skip make in ../../../libwidg2 (no source)"; \
+ else \
+ cd ../../../libwidg2 && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES) "; \
+ fi
+
+../../../libwidg2/makefile: ../../../libwidg2/Make.proto
+ $(TOP)/rules/stmkmf --cd ../../../libwidg2
+
+libstx_libtool.so: ../../../libtool/libstx_libtool.so
+ ln -sf ../../../libtool/libstx_libtool.so .
+
+../../../libtool/libstx_libtool.so: ../../../libtool/makefile $(FORCE)
+ @if [ -f "../../../libtool/.NOSOURCE" ]; then \
+ echo "skip make in ../../../libtool (no source)"; \
+ else \
+ cd ../../../libtool && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES) "; \
+ fi
+
+../../../libtool/makefile: ../../../libtool/Make.proto
+ $(TOP)/rules/stmkmf --cd ../../../libtool
+
+libstx_libjava.so: ../..//libstx_libjava.so
+ ln -sf ../..//libstx_libjava.so .
+
+../..//libstx_libjava.so: ../..//makefile $(FORCE)
+ @if [ -f "../..//.NOSOURCE" ]; then \
+ echo "skip make in ../../ (no source)"; \
+ else \
+ cd ../../ && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES) "; \
+ fi
+
+../..//makefile: ../..//Make.proto
+ $(TOP)/rules/stmkmf --cd ../../
+
+
+
+
+
+java: ant
+
+ant:
+ ant -f java/build.xml
+
+antIfPossible:
+ -ant -f java/build.xml
+
+full:: ant
+
+zlib:
+ cd $(ZLIB_DIR); $(MAKE) $(MAKE_ZLIB_ARG)
+
+support/fdlibm/libfdm.a:
+ $(MAKE) CCCONFOPT="$(CCCONFOPT)" -C support/fdlibm
+
+
+
+
+
+
+# Enforce recompilation of package definition class if Mercurial working
+# copy state changes. Together with --guessVersion it ensures that package
+# definition class always contains correct binary revision string.
+ifneq (**NOHG**, $(shell hg root 2> /dev/null || echo -n '**NOHG**'))
+stx_libjava_examples_chat.$(O): $(shell hg root)/.hg/dirstate
+endif
+
+
+
+
+clean::
+ -rm -f *.so chat.$(O)
+
+clobber:: clean
+ -rm -f chat *.img *.sav
+
+# BEGINMAKEDEPEND --- do not remove this line; make depend needs it
+$(OUTDIR)Chat.$(O) Chat.$(H): Chat.st $(INCLUDE_TOP)/stx/libview2/ApplicationModel.$(H) $(INCLUDE_TOP)/stx/libview2/Model.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)ChatStart.$(O) ChatStart.$(H): ChatStart.st $(INCLUDE_TOP)/stx/libbasic/StandaloneStartup.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)ChatWindow.$(O) ChatWindow.$(H): ChatWindow.st $(INCLUDE_TOP)/stx/libview2/ApplicationModel.$(H) $(INCLUDE_TOP)/stx/libview2/Model.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)stx_libjava_examples_chat.$(O) stx_libjava_examples_chat.$(H): stx_libjava_examples_chat.st $(INCLUDE_TOP)/stx/libbasic/ApplicationDefinition.$(H) $(INCLUDE_TOP)/stx/libbasic/ProjectDefinition.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+
+# ENDMAKEDEPEND --- do not remove this line
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/chat/Make.spec Tue Sep 24 00:11:53 2013 +0100
@@ -0,0 +1,68 @@
+# $Header$
+#
+# DO NOT EDIT
+# automagically generated from the projectDefinition: stx_libjava_examples_chat.
+#
+# Warning: once you modify this file, do not rerun
+# stmkmp or projectDefinition-build again - otherwise, your changes are lost.
+#
+# This file contains specifications which are common to all platforms.
+#
+
+# Do NOT CHANGE THESE DEFINITIONS
+# (otherwise, ST/X will have a hard time to find out the packages location from its packageID,
+# to find the source code of a class and to find the library for a package)
+MODULE=stx
+MODULE_DIR=libjava/examples/chat
+PACKAGE=$(MODULE):$(MODULE_DIR)
+
+
+# Argument(s) to the stc compiler (stc --usage).
+# -headerDir=. : create header files locally
+# (if removed, they will be created as common
+# -Pxxx : defines the package
+# -Zxxx : a prefix for variables within the classLib
+# -Dxxx : defines passed to to CC for inline C-code
+# -Ixxx : include path passed to CC for inline C-code
+# +optspace : optimized for space
+# +optspace2 : optimized more for space
+# +optspace3 : optimized even more for space
+# +optinline : generate inline code for some ST constructs
+# +inlineNew : additionally inline new
+# +inlineMath : additionally inline some floatPnt math stuff
+#
+# ********** OPTIONAL: MODIFY the next line(s) ***
+# STCLOCALOPTIMIZATIONS=+optinline +inlineNew
+# STCLOCALOPTIMIZATIONS=+optspace3
+STCLOCALOPTIMIZATIONS=+optspace3
+
+
+# Argument(s) to the stc compiler (stc --usage).
+# -warn : no warnings
+# -warnNonStandard : no warnings about ST/X extensions
+# -warnEOLComments : no warnings about EOL comment extension
+# -warnPrivacy : no warnings about privateClass extension
+#
+# ********** OPTIONAL: MODIFY the next line(s) ***
+# STCWARNINGS=-warn
+# STCWARNINGS=-warnNonStandard
+# STCWARNINGS=-warnEOLComments
+STCWARNINGS=-warnNonStandard
+
+COMMON_CLASSES= \
+ Chat \
+ ChatStart \
+ ChatWindow \
+ stx_libjava_examples_chat \
+
+
+
+
+COMMON_OBJS= \
+ $(OUTDIR_SLASH)Chat.$(O) \
+ $(OUTDIR_SLASH)ChatStart.$(O) \
+ $(OUTDIR_SLASH)ChatWindow.$(O) \
+ $(OUTDIR_SLASH)stx_libjava_examples_chat.$(O) \
+
+
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/chat/Makefile.init Tue Sep 24 00:11:53 2013 +0100
@@ -0,0 +1,27 @@
+#
+# DO NOT EDIT
+#
+# make uses this file (Makefile) only, if there is no
+# file named "makefile" (lower-case m) in the same directory.
+# My only task is to generate the real makefile and call make again.
+# Thereafter, I am no longer used and needed.
+#
+# MACOSX caveat:
+# as filenames are not case sensitive (in a default setup),
+# we cannot use the above trick. Therefore, this file is now named
+# "Makefile.init", and you have to execute "make -f Makefile.init" to
+# get the initial makefile. This is now also done by the toplevel CONFIG
+# script.
+
+.PHONY: run
+
+run: makefile
+ $(MAKE) -f makefile
+
+#only needed for the definition of $(TOP)
+include Make.proto
+
+makefile: mf
+
+mf:
+ $(TOP)/rules/stmkmf
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/chat/abbrev.stc Tue Sep 24 00:11:53 2013 +0100
@@ -0,0 +1,7 @@
+# automagically generated by the project definition
+# this file is needed for stc to be able to compile modules independently.
+# it provides information about a classes filename, category and especially namespace.
+Chat Chat stx:libjava/examples/chat 'stx-libjava-examples-chat' 1
+ChatStart ChatStart stx:libjava/examples/chat 'stx-libjava-examples-chat' 1
+ChatWindow ChatWindow stx:libjava/examples/chat 'stx-libjava-examples-chat' 1
+stx_libjava_examples_chat stx_libjava_examples_chat stx:libjava/examples/chat '* Projects & Packages *' 3
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/chat/autopackage/default.apspec Tue Sep 24 00:11:53 2013 +0100
@@ -0,0 +1,90 @@
+# -*- shell-script -*-
+[Meta]
+ShortName: chat
+SoftwareVersion: 6.2.3.0
+DisplayName: Very Simple Jabber Client
+RootName: @exept.de/expecco:$SOFTWAREVERSION
+Summary: Very Simple Jabber Client
+Maintainer: SWING Research Group
+Packager: eXept Software AG
+PackageVersion: 1
+CPUArchitectures: x86
+AutopackageTarget: 1.0
+Type: Application
+License: Commercial
+
+[Description]
+Very Simple Jabber Client
+
+[BuildPrepare]
+# If you're using autotools, the default should be enough.
+# prepareBuild will set up apbuild and run configure for you. If you
+# need to pass arguments to configure, just add them to prepareBuild:
+# prepareBuild --enable-foo --disable-bar
+#prepareBuild
+
+[BuildUnprepare]
+# If you're using prepareBuild above, there is no need to change this!
+#unprepareBuild
+
+[Globals]
+# Variables declared in this section will be available in all other sections
+export APKG_BUILD_SKIP_CONFIGURE=1
+export APKG_BUILD_SKIP_MAKE=1
+export MYPREFIX=/opt/chat
+
+[Prepare]
+#recommend '@autopackage.org/autopackage-gtk' 1
+
+[Imports]
+import <<EOF
+$source_dir/chat
+$source_dir/resources
+$source_dir/keyboard.rc
+$source_dir/keyboardMacros.rc
+$source_dir/display.rc
+$source_dir/host.rc
+$source_dir/../doc
+$source_dir/../testsuites/webedition
+$source_dir/../projects/libraries
+$source_dir/../reportGenerator/tools
+$source_dir/../../pdf/afm
+$source_dir/../plugin/selenium/libexept_expecco_plugin_selenium.so
+$source_dir/../externalTools
+EOF
+
+for i in $source_dir/*.so
+do
+ echo $source_dir/$(readlink $i)
+done | import
+
+[Install]
+if [ "$PREFIX" != "/usr" ]
+then
+ export MYPREFIX=$PREFIX
+fi
+
+find . -type d \( -name CVS -or -name 'not_*' \) -print | xargs rm -rf
+mkdir -p $MYPREFIX
+copyFiles expecco *.rc resources $MYPREFIX/bin
+copyFiles *.so $MYPREFIX/lib
+copyFiles doc externalTools $MYPREFIX/packages/exept/expecco
+copyFiles webedition/projects libraries $MYPREFIX/testsuites
+copyFiles tools $MYPREFIX/packages/exept/expecco/reportGenerator
+copyFiles afm $MYPREFIX/packages/exept/pdf
+copyFiles libexept_expecco_plugin_selenium.so $MYPREFIX/plugin
+
+#installExe expecco
+#installLib *.so
+#installData resources
+#installData keyboard.rc
+#installData keyboardMacros.rc
+#installData host.rc
+#installData display.rc
+#installData doc
+
+[Uninstall]
+# Leaving this at the default is safe unless you use custom commands in
+# "Install" to create files. All autopackage API functions
+# that installs files are logged.
+uninstallFromLog
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/chat/bc.mak Tue Sep 24 00:11:53 2013 +0100
@@ -0,0 +1,515 @@
+# $Header$
+#
+# DO NOT EDIT
+# automagically generated from the projectDefinition: stx_libjava_examples_chat.
+#
+# Warning: once you modify this file, do not rerun
+# stmkmp or projectDefinition-build again - otherwise, your changes are lost.
+#
+# Historic Note:
+# this used to contain only rules to make with borland
+# (called via bmake, by "make.exe -f bc.mak")
+# this has changed; it is now also possible to build using microsoft visual c
+# (called via vcmake, by "make.exe -f bc.mak -DUSEVC")
+#
+
+TOP=..\..\..
+INCLUDE_TOP=$(TOP)\..
+
+# An old file, used as a dummy target for FORCE if we do not want
+# re-make libraries. Windows make does not work if we redefine FORCE= (empty string)
+# OLD_FILE=bmake.bat
+OLD_FILE="c:\windows\win.ini"
+
+#dummy target to force a build
+!ifndef FORCE
+FORCE=$(OLD_FILE)
+!endif
+
+CFLAGS_LOCAL=$(CFLAGS_APPTYPE) \
+ -DSTARTUP_CLASS="\"ChatStart\"" \
+ -DSTARTUP_SELECTOR="\"start\"" \
+ -DUSE_MODULE_TABLE
+
+#
+
+!INCLUDE $(TOP)\rules\stdHeader_bc
+!INCLUDE Make.spec
+
+OBJS= $(COMMON_OBJS) $(WIN32_OBJS)
+
+
+
+#
+LIBNAME=dummy
+STCOPT="+optinline"
+LOCALINCLUDES= -I$(INCLUDE_TOP)\stx\libbasic -I$(INCLUDE_TOP)\stx\libview2
+LOCALDEFINES=
+GLOBALDEFINES=
+
+STCLOCALOPT='-package=$(PACKAGE)' $(LOCALDEFINES) $(LOCALINCLUDES) $(STCLOCALOPTIMIZATIONS) $(STCWARNINGS) $(LOCALDEFINES) $(COMMONSYMFLAG) -varPrefix=$(LIBNAME)
+
+LFLAGS=$(APP_LFLAGS)
+
+PROJECT_NOCONSOLE= chat.exe
+PROJECT_CONSOLE= chat.com
+ALLOBJFILES= main.$(O)
+!ifdef USETCC
+RESFILES=
+!else
+RESFILES= chatWinRC.$(RES)
+!endif
+
+ALLOBJ= $(ALLOBJFILES) $(OBJS)
+DEFFILE=$(TOP)\rules\bc_exe.def
+
+LIBFILES=$(LIBDIR_LIBRUN)\librun.lib
+ALLLIB=$(LIBFILES) $(APP_IMPORTLIBS) $(APP_RT_LIB)
+
+REQUIRED_LIBS=librun.dll \
+ libstx_libbasic.dll \
+ libstx_libbasic2.dll \
+ libstx_libcomp.dll \
+ libstx_libbasic3.dll \
+ libstx_libview.dll \
+ libstx_libui.dll \
+ libstx_libview2.dll \
+ libstx_goodies_sunit.dll \
+ libstx_libwidg.dll \
+ libstx_libhtml.dll \
+ libstx_libwidg2.dll \
+ libstx_libtool.dll \
+ libstx_libjava.dll \
+
+
+REQUIRED_FILES=$(RT_DLL) $(X11_DLL) $(XEXT_DLL) symbols.stc $(REQUIRED_LIBS)
+
+REQUIRED_SUPPORT_DIRS=RESOURCEFILES
+
+target: ALL postBuildCleanup
+
+# the executable, all required files and a self-installing-installer-exe
+ALL:: prereq ALL_NP
+
+# all, but no prereqs
+ALL_NP:: exe $(REQUIRED_SUPPORT_DIRS) postBuildCleanup setup
+
+exe: newBuildDate $(REQUIRED_LIBS) noConsoleApp consoleApp
+
+# the executable only
+# with console
+consoleApp: $(REQUIRED_LIBS)
+ -del main.$(O)
+ $(MAKE) -N -f bc.mak $(USE_ARG) \
+ MAKE_BAT=$(MAKE_BAT) \
+ PROJECT=$(PROJECT_CONSOLE) \
+ CFLAGS_APPTYPE=" -DWIN32GUI $(CFLAGS_CONSOLE)" \
+ LFLAGS_APPTYPE=" $(LFLAGS_CONSOLE)" \
+ CRT_STARTUP=" $(CRT_STARTUP_CONSOLE)" theExe
+
+# without console
+noConsoleApp: $(REQUIRED_LIBS)
+ -del main.$(O)
+ $(MAKE) -N -f bc.mak $(USE_ARG) \
+ MAKE_BAT=$(MAKE_BAT) \
+ PROJECT=$(PROJECT_NOCONSOLE) \
+ CFLAGS_APPTYPE=" -DWIN32GUI $(CFLAGS_NOCONSOLE) -DWIN_LOGFILE="\\"\"chat.log\\"\""" \
+ LFLAGS_APPTYPE=" $(LFLAGS_NOCONSOLE)" \
+ CRT_STARTUP=" $(CRT_STARTUP_NOCONSOLE)" theExe
+
+# the executable only (internal target; needs some defines)
+theExe: $(OUTDIR) $(OBJS) $(REQUIRED_FILES) show $(PROJECT)
+
+# build all mandatory prerequisite packages (containing superclasses) for this package
+prereq:
+ $(MAKE) -N -f bc.mak $(USE_ARG) FORCE=FORCE_BUILD $(REQUIRED_LIBS)
+
+FORCE_BUILD:
+ @rem Dummy target to force a build
+
+# a nullsoft installable delivery
+# This uses the Nullsoft Installer Package and works in Windows only
+setup: $(PROJECT) postBuildCleanup chat.nsi
+ $(MAKENSIS) chat.nsi
+
+newBuildDate:
+ del buildDate.h
+
+new:
+ $(MAKE_BAT) clean
+ $(MAKE_BAT)
+
+RESOURCEFILES: chat_RESOURCES chat_BITMAPS \
+ stx_RESOURCES stx_STYLES stx_BITMAPS
+
+
+chat_RESOURCES: resources\stx\libjava\examples\chat\NUL
+ -copy ..\resources\*.rs resources\stx\libjava\examples\chat\..
+ -copy ..\resources\*.style resources\stx\libjava\examples\chat\..
+
+chat_BITMAPS: resources\stx\libjava\examples\chat\bitmaps\NUL
+ -copy *.ico resources\stx\libjava\examples\chat\bitmaps
+ -copy *.gif resources\stx\libjava\examples\chat\bitmaps
+
+resources\stx\libjava\examples\chat\bitmaps\NUL: resources\stx\libjava\examples\chat\NUL
+ mkdir resources\stx\libjava\examples\chat\bitmaps
+
+resources\stx\libjava\examples\chat\NUL: resources\stx\libjava\examples\NUL
+ mkdir resources\stx\libjava\examples\chat
+
+resources\stx\libjava\examples\NUL: resources\stx\libjava\NUL
+ mkdir resources\stx\libjava\examples
+
+resources\stx\libjava\NUL: resources\stx\NUL
+ mkdir resources\stx\libjava
+
+
+
+stx_RESOURCES: \
+ keyboard.rc \
+ keyboardMacros.rc \
+ host.rc \
+ h_win32.rc \
+ display.rc \
+ d_win32.rc \
+ libbasic_RESOURCES \
+ libview_RESOURCES \
+ libtool_RESOURCES \
+ libtool2_RESOURCES
+
+keyboard.rc: $(TOP)\projects\smalltalk\keyboard.rc
+ copy $(TOP)\projects\smalltalk\keyboard.rc *.*
+
+keyboardMacros.rc: $(TOP)\projects\smalltalk\keyboardMacros.rc
+ copy $(TOP)\projects\smalltalk\keyboardMacros.rc *.*
+
+host.rc: $(TOP)\projects\smalltalk\host.rc
+ copy $(TOP)\projects\smalltalk\host.rc *.*
+
+h_win32.rc: $(TOP)\projects\smalltalk\h_win32.rc
+ copy $(TOP)\projects\smalltalk\h_win32.rc *.*
+
+display.rc: $(TOP)\projects\smalltalk\display.rc
+ copy $(TOP)\projects\smalltalk\display.rc *.*
+
+d_win32.rc: $(TOP)\projects\smalltalk\d_win32.rc
+ copy $(TOP)\projects\smalltalk\d_win32.rc *.*
+
+stx_STYLES: resources\stx\libview\NUL resources\stx\libview\styles\NUL
+ -copy $(TOP)\libview\styles\*.style resources\stx\libview\styles\*.*
+ -copy $(TOP)\libview\styles\*.common resources\stx\libview\styles\*.*
+
+stx_BITMAPS: \
+ libwidg_BITMAPS
+
+libwidg_BITMAPS: resources\stx\libwidg\bitmaps\NUL
+ -copy $(TOP)\libwidg\bitmaps\*.xpm resources\stx\libwidg\bitmaps\*.*
+
+libbasic_RESOURCES: resources\stx\libbasic\NUL
+ copy $(TOP)\libbasic\resources\*.rs resources\stx\libbasic\*.*
+
+libtool_RESOURCES: resources\stx\libtool\NUL
+ -copy $(TOP)\libtool\resources\*.rs resources\stx\libtool\*.*
+
+libtool2_RESOURCES: resources\stx\libtool2\NUL
+ -copy $(TOP)\libtool2\resources\*.rs resources\stx\libtool2\*.*
+
+libview_RESOURCES: resources\stx\libview\NUL
+ -copy $(TOP)\libview\resources\*.rs resources\stx\libview\*.*
+
+libview2_RESOURCES: resources\stx\libview2\NUL
+ -copy $(TOP)\libview2\resources\*.rs resources\stx\libview2\*.*
+
+resources\stx\libbasic\NUL: resources\stx\NUL
+ mkdir resources\stx\libbasic
+
+resources\stx\libtool\NUL: resources\stx\NUL
+ mkdir resources\stx\libtool
+
+resources\stx\libtool2\NUL: resources\stx\NUL
+ mkdir resources\stx\libtool2
+
+resources\stx\libview\NUL: resources\stx\NUL
+ mkdir resources\stx\libview
+
+resources\stx\libview\styles\NUL: resources\stx\libview\NUL
+ mkdir resources\stx\libview\styles
+
+resources\stx\libview2\NUL: resources\stx\NUL
+ mkdir resources\stx\libview2
+
+resources\stx\libwidg\bitmaps\NUL: resources\stx\libwidg\NUL
+ mkdir resources\stx\libwidg\bitmaps
+
+resources\stx\libwidg\NUL: resources\stx\NUL
+ mkdir resources\stx\libwidg
+
+resources\stx\NUL: resources\NUL
+ mkdir resources\stx
+
+resources\NUL:
+ mkdir resources
+
+bitmaps\NUL:
+ mkdir bitmaps
+
+doc\NUL:
+ mkdir doc
+
+
+
+
+
+
+libstx_libbasic.dll: ..\..\..\libbasic\$(OBJDIR)\libstx_libbasic.dll
+ copy ..\..\..\libbasic\$(OBJDIR)\libstx_libbasic.dll *.*
+
+..\..\..\libbasic\$(OBJDIR)\libstx_libbasic.dll: $(FORCE)
+ pushd ..\..\..\libbasic & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
+
+libstx_libbasic2.dll: ..\..\..\libbasic2\$(OBJDIR)\libstx_libbasic2.dll
+ copy ..\..\..\libbasic2\$(OBJDIR)\libstx_libbasic2.dll *.*
+
+..\..\..\libbasic2\$(OBJDIR)\libstx_libbasic2.dll: $(FORCE)
+ pushd ..\..\..\libbasic2 & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
+
+libstx_libcomp.dll: ..\..\..\libcomp\$(OBJDIR)\libstx_libcomp.dll
+ copy ..\..\..\libcomp\$(OBJDIR)\libstx_libcomp.dll *.*
+
+..\..\..\libcomp\$(OBJDIR)\libstx_libcomp.dll: $(FORCE)
+ pushd ..\..\..\libcomp & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
+
+libstx_libbasic3.dll: ..\..\..\libbasic3\$(OBJDIR)\libstx_libbasic3.dll
+ copy ..\..\..\libbasic3\$(OBJDIR)\libstx_libbasic3.dll *.*
+
+..\..\..\libbasic3\$(OBJDIR)\libstx_libbasic3.dll: $(FORCE)
+ pushd ..\..\..\libbasic3 & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
+
+libstx_libview.dll: ..\..\..\libview\$(OBJDIR)\libstx_libview.dll
+ copy ..\..\..\libview\$(OBJDIR)\libstx_libview.dll *.*
+
+..\..\..\libview\$(OBJDIR)\libstx_libview.dll: $(FORCE)
+ pushd ..\..\..\libview & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
+
+libstx_libui.dll: ..\..\..\libui\$(OBJDIR)\libstx_libui.dll
+ copy ..\..\..\libui\$(OBJDIR)\libstx_libui.dll *.*
+
+..\..\..\libui\$(OBJDIR)\libstx_libui.dll: $(FORCE)
+ pushd ..\..\..\libui & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
+
+libstx_libview2.dll: ..\..\..\libview2\$(OBJDIR)\libstx_libview2.dll
+ copy ..\..\..\libview2\$(OBJDIR)\libstx_libview2.dll *.*
+
+..\..\..\libview2\$(OBJDIR)\libstx_libview2.dll: $(FORCE)
+ pushd ..\..\..\libview2 & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
+
+libstx_goodies_sunit.dll: ..\..\..\goodies\sunit\$(OBJDIR)\libstx_goodies_sunit.dll
+ copy ..\..\..\goodies\sunit\$(OBJDIR)\libstx_goodies_sunit.dll *.*
+
+..\..\..\goodies\sunit\$(OBJDIR)\libstx_goodies_sunit.dll: $(FORCE)
+ pushd ..\..\..\goodies\sunit & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
+
+libstx_libwidg.dll: ..\..\..\libwidg\$(OBJDIR)\libstx_libwidg.dll
+ copy ..\..\..\libwidg\$(OBJDIR)\libstx_libwidg.dll *.*
+
+..\..\..\libwidg\$(OBJDIR)\libstx_libwidg.dll: $(FORCE)
+ pushd ..\..\..\libwidg & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
+
+libstx_libhtml.dll: ..\..\..\libhtml\$(OBJDIR)\libstx_libhtml.dll
+ copy ..\..\..\libhtml\$(OBJDIR)\libstx_libhtml.dll *.*
+
+..\..\..\libhtml\$(OBJDIR)\libstx_libhtml.dll: $(FORCE)
+ pushd ..\..\..\libhtml & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
+
+libstx_libwidg2.dll: ..\..\..\libwidg2\$(OBJDIR)\libstx_libwidg2.dll
+ copy ..\..\..\libwidg2\$(OBJDIR)\libstx_libwidg2.dll *.*
+
+..\..\..\libwidg2\$(OBJDIR)\libstx_libwidg2.dll: $(FORCE)
+ pushd ..\..\..\libwidg2 & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
+
+libstx_libtool.dll: ..\..\..\libtool\$(OBJDIR)\libstx_libtool.dll
+ copy ..\..\..\libtool\$(OBJDIR)\libstx_libtool.dll *.*
+
+..\..\..\libtool\$(OBJDIR)\libstx_libtool.dll: $(FORCE)
+ pushd ..\..\..\libtool & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
+
+libstx_libjava.dll: ..\..\$(OBJDIR)\libstx_libjava.dll
+ copy ..\..\$(OBJDIR)\libstx_libjava.dll *.*
+
+..\..\$(OBJDIR)\libstx_libjava.dll: $(FORCE)
+ pushd ..\.. & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
+
+
+
+
+sources\NUL:
+ mkdir sources
+
+show:
+ @echo LFLAGS= $(LFLAGS)
+ @echo ALLOBJ= $(ALLOBJ)
+ @echo PROJECT= $(PROJECT)
+ @echo APP_IMPORTLIBS= $(APP_IMPORTLIBS)
+ @echo ALLLIB= $(ALLLIB)
+ @echo DEFFILE= $(DEFFILE)
+ @echo ALLRES= $(ALLRES)
+
+!ifdef USEBC
+
+$(PROJECT_CONSOLE): $(ALLOBJFILES) $(OBJS) $(RESFILES) $(DEFFILE) $(LIBFILES)
+ $(APP_LINKER) $(LFLAGS) $(LFLAGS_APPTYPE) $(CRT_STARTUP) $(ALLOBJ), $(PROJECT_CONSOLE),, $(ALLLIB), $(DEFFILE), $(RESFILES)
+
+$(PROJECT_NOCONSOLE): $(ALLOBJFILES) $(OBJS) $(RESFILES) $(DEFFILE) $(LIBFILES)
+ $(APP_LINKER) $(LFLAGS) $(LFLAGS_APPTYPE) $(CRT_STARTUP) $(ALLOBJ), $(PROJECT_NOCONSOLE),, $(ALLLIB), $(DEFFILE), $(RESFILES)
+
+!else
+! ifdef USEVC
+
+$(PROJECT_CONSOLE): $(ALLOBJFILES) $(OBJS) $(RESFILES) $(DEFFILE) $(LIBFILES)
+ $(APP_LINKER) $(LFLAGS) $(LFLAGS_APPTYPE) $(CRT_STARTUP) $(ALLOBJ) /OUT:"$(PROJECT_CONSOLE)" \
+ /MANIFEST /MANIFESTFILE:"$(PROJECT_CONSOLE).manifest" \
+ /PDB:"$(PROJECT_CONSOLE).pdb" \
+ /SUBSYSTEM:CONSOLE $(ALLLIB) $(RESFILES)
+
+$(PROJECT_NOCONSOLE): $(ALLOBJFILES) $(OBJS) $(RESFILES) $(DEFFILE) $(LIBFILES)
+ $(APP_LINKER) $(LFLAGS) $(LFLAGS_APPTYPE) $(CRT_STARTUP) $(ALLOBJ) /OUT:"$(PROJECT_NOCONSOLE)" \
+ /MANIFEST /MANIFESTFILE:"$(PROJECT_NOCONSOLE).manifest" \
+ /PDB:"$(PROJECT_NOCONSOLE).pdb" \
+ /SUBSYSTEM:WINDOWS $(ALLLIB) $(RESFILES)
+
+! else
+! ifdef USELCC
+
+$(PROJECT_CONSOLE): $(ALLOBJFILES) $(OBJS) $(RESFILES) $(DEFFILE) $(LIBFILES)
+ $(APP_LINKER) -subsystem console $(LFLAGS) $(LFLAGS_APPTYPE) $(CRT_STARTUP) $(ALLOBJ) -o "$(PROJECT_CONSOLE)" $(ALLLIB) $(RESFILES)
+
+$(PROJECT_NOCONSOLE): $(ALLOBJFILES) $(OBJS) $(RESFILES) $(DEFFILE) $(LIBFILES)
+ $(APP_LINKER) -subsystem windows $(LFLAGS) $(LFLAGS_APPTYPE) $(CRT_STARTUP) $(ALLOBJ) -o "$(PROJECT_NOCONSOLE)" $(ALLLIB) $(RESFILES)
+
+! else
+! ifdef USETCC
+
+$(PROJECT_CONSOLE): $(ALLOBJFILES) $(OBJS) $(RESFILES) $(DEFFILE) $(LIBFILES)
+ $(APP_LINKER) $(LFLAGS) $(LFLAGS_APPTYPE) $(CRT_STARTUP) $(ALLOBJ) -o "$(PROJECT_CONSOLE)" $(ALLLIB) $(RESFILES)
+
+$(PROJECT_NOCONSOLE): $(ALLOBJFILES) $(OBJS) $(RESFILES) $(DEFFILE) $(LIBFILES)
+ $(APP_LINKER) $(LFLAGS) $(LFLAGS_APPTYPE) $(CRT_STARTUP) $(ALLOBJ) -o "$(PROJECT_NOCONSOLE)" $(ALLLIB) $(RESFILES)
+
+! else
+! if defined(USEMINGW32) || defined(USEMINGW64)
+
+$(PROJECT_CONSOLE): $(ALLOBJFILES) $(OBJS) $(RESFILES) $(DEFFILE) $(LIBFILES) show
+ $(APP_LINKER) $(LFLAGS) $(LFLAGS_APPTYPE) $(CRT_STARTUP) $(ALLOBJ) -o "$(PROJECT_CONSOLE)" $(ALLLIB) $(RESFILES)
+
+$(PROJECT_NOCONSOLE): $(ALLOBJFILES) $(OBJS) $(RESFILES) $(DEFFILE) $(LIBFILES) show
+ $(APP_LINKER) $(LFLAGS) $(LFLAGS_APPTYPE) $(CRT_STARTUP) $(ALLOBJ) -o "$(PROJECT_NOCONSOLE)" $(ALLLIB) $(APP_IMPORTLIBS) $(RESFILES)
+
+! else
+error error error
+! endif
+! endif
+! endif
+! endif
+!endif
+
+!INCLUDE $(TOP)\rules\stdRules_bc
+
+#
+# additional rules
+#
+chatWin.$(RES): chatWin.rc chat.ico
+
+main.$(O): buildDate.h main.c bc.mak
+
+main.c: $(TOP)\librun\main.c
+ copy $(TOP)\librun\main.c main.c
+
+# now in stdRules.
+#buildDate.h: $(GENDATE_UTILITIY)
+# $(GENDATE_UTILITIY)
+
+librun.dll: $(TOP)\librun\$(OBJDIR_LIBRUN)\librun.dll
+ copy $(TOP)\librun\$(OBJDIR_LIBRUN)\librun.dll librun.dll
+
+#cs3245.dll
+$(RT_DLL): $(TOP)\support\win32\borland\$(RT_DLL)
+ copy $(TOP)\support\win32\borland\$(RT_DLL) $(RT_DLL)
+
+X11.dll: $(TOP)\support\win32\X11.dll
+ copy $(TOP)\support\win32\X11.dll X11.dll
+
+Xext.dll: $(TOP)\support\win32\Xext.dll
+ copy $(TOP)\support\win32\Xext.dll Xext.dll
+
+symbols.stc: $(TOP)\include\symbols.stc
+ copy $(TOP)\include\symbols.stc symbols.stc
+
+
+java: ant
+
+ant:
+ ant -f java\build.xml
+
+antIfPossible:
+ -ant -f java\build.xml
+
+full:: ant
+
+$(ZLIB):
+ cd $(ZLIB_DIR)
+ $(MAKE) $(MAKE_ZLIB_ARG) $(ZLIB)
+ cd ..\..\libjava
+
+$(BZ2LIB):
+ cd $(BZ2LIB_DIR)
+ $(MAKE) $(MAKE_BZ2LIB_ARG) bz2.lib
+ cd ..\..\libjava
+
+support\fdlibm\libfdm.lib:
+ cd support\fdlibm
+ $(MAKE) -f Makefile.bcc
+ cd ..\..
+
+
+
+
+
+clean::
+ -del genDate.exe genDate.com
+ -del c0x32.dll
+ -del c0x32.lib
+ -del buildDate.h
+ -del $(PROJECT)
+ -del install_chat.exe
+ -del stx.lib
+ -del stx.dll
+ -del $(RT_DLL)
+ -del $(REQUIRED_FILES)
+ -del main.c
+ -del *.log
+ -del *.$(RES)
+ -rmdir /S /Q resources
+ -rmdir /S /Q $(OBJDIR)
+
+clobber:: clean
+ -del *.dll *.exe *.com
+
+postBuildCleanup::
+ @rem stupid win-make does not allow empty
+
+# BEGINMAKEDEPEND --- do not remove this line; make depend needs it
+$(OUTDIR)Chat.$(O) Chat.$(H): Chat.st $(INCLUDE_TOP)\stx\libview2\ApplicationModel.$(H) $(INCLUDE_TOP)\stx\libview2\Model.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)ChatStart.$(O) ChatStart.$(H): ChatStart.st $(INCLUDE_TOP)\stx\libbasic\StandaloneStartup.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)ChatWindow.$(O) ChatWindow.$(H): ChatWindow.st $(INCLUDE_TOP)\stx\libview2\ApplicationModel.$(H) $(INCLUDE_TOP)\stx\libview2\Model.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)stx_libjava_examples_chat.$(O) stx_libjava_examples_chat.$(H): stx_libjava_examples_chat.st $(INCLUDE_TOP)\stx\libbasic\ApplicationDefinition.$(H) $(INCLUDE_TOP)\stx\libbasic\ProjectDefinition.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+
+# ENDMAKEDEPEND --- do not remove this line
+
+# **Must be at end**
+
+# Enforce recompilation of package definition class if Mercurial working
+# copy state changes. Together with --guessVersion it ensures that package
+# definition class always contains correct binary revision string.
+!IFDEF HGROOT
+$(OUTDIR)stx_libjava_examples_chat.$(O): $(HGROOT)\.hg\dirstate
+!ENDIF
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/chat/bmake.bat Tue Sep 24 00:11:53 2013 +0100
@@ -0,0 +1,12 @@
+@REM -------
+@REM make using Borland bcc32
+@REM type bmake, and wait...
+@REM do not edit - automatically generated from ProjectDefinition
+@REM -------
+@SET DEFINES=
+@REM Kludge got Mercurial, cannot be implemented in Borland make
+@FOR /F "tokens=*" %%i in ('hg root') do SET HGROOT=%%i
+@IF "%HGROOT%" NEQ "" SET DEFINES=%DEFINES% "-DHGROOT=%HGROOT%"
+make.exe -N -f bc.mak %DEFINES% %*
+
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/chat/builder/baseline.rbspec Tue Sep 24 00:11:53 2013 +0100
@@ -0,0 +1,38 @@
+
+# generated from project definition
+
+# load package dependencies
+load 'package.deps.rake'
+
+# kludge: clear some invalid dependencies of libwidg
+# (should be fixed in baseline)
+clear "stx:libwidg" => "stx:libui"
+clear "stx:libwidg2" => "stx:libui"
+
+project :'chat:baseline' do
+ # preamble
+
+ # --------
+
+ package "stx:libbasic"
+ package "stx:libbasic2"
+ package "stx:libcomp"
+ package "stx:libbasic3"
+ package "stx:libview"
+ package "stx:libui"
+ package "stx:libview2"
+ package "stx:goodies/sunit"
+ package "stx:libwidg"
+ package "stx:libhtml"
+ package "stx:libwidg2"
+ package "stx:libtool"
+ package "stx:libjava"
+
+
+ application "stx:libjava/examples/chat"
+
+ # postamble
+
+ # ---------
+
+end
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/chat/builder/package.deps.rake Tue Sep 24 00:11:53 2013 +0100
@@ -0,0 +1,82 @@
+
+# Package dependencies.
+# Automatically generated by project defintion.
+
+task "stx:libtool" => "stx:libbasic"
+task "stx:libtool" => "stx:libbasic2"
+task "stx:libtool" => "stx:libbasic3"
+task "stx:libtool" => "stx:libcomp"
+task "stx:libtool" => "stx:libui"
+task "stx:libtool" => "stx:libview"
+task "stx:libtool" => "stx:libview2"
+task "stx:libtool" => "stx:libwidg"
+task "stx:libtool" => "stx:libwidg2"
+task "stx:libtool" => "stx:libwidg2"
+task "stx:libtool" => "stx:libwidg2"
+task "stx:libtool" => "stx:libwidg2"
+
+task "stx:libcomp" => "stx:libbasic"
+
+task "stx:libbasic3" => "stx:libbasic"
+task "stx:libbasic3" => "stx:libbasic2"
+
+task "stx:libwidg2" => "stx:libbasic"
+task "stx:libwidg2" => "stx:libbasic2"
+task "stx:libwidg2" => "stx:libview"
+task "stx:libwidg2" => "stx:libview2"
+task "stx:libwidg2" => "stx:libwidg"
+task "stx:libwidg2" => "stx:libui"
+
+task "stx:libhtml" => "stx:libbasic"
+task "stx:libhtml" => "stx:libview"
+task "stx:libhtml" => "stx:libwidg"
+
+task "stx:libbasic2" => "stx:libbasic"
+
+
+task "stx:libview2" => "stx:libbasic"
+task "stx:libview2" => "stx:libbasic2"
+task "stx:libview2" => "stx:libview"
+task "stx:libview2" => "stx:libui"
+
+task "stx:goodies/sunit" => "stx:libbasic"
+task "stx:goodies/sunit" => "stx:libview2"
+task "stx:goodies/sunit" => "stx:libbasic2"
+task "stx:goodies/sunit" => "stx:libview"
+
+task "stx:libjava" => "stx:goodies/sunit"
+task "stx:libjava" => "stx:libbasic"
+task "stx:libjava" => "stx:libbasic2"
+task "stx:libjava" => "stx:libbasic3"
+task "stx:libjava" => "stx:libview"
+task "stx:libjava" => "stx:libcomp"
+task "stx:libjava" => "stx:libhtml"
+task "stx:libjava" => "stx:libtool"
+task "stx:libjava" => "stx:libview2"
+task "stx:libjava" => "stx:libwidg"
+task "stx:libjava" => "stx:libwidg2"
+
+task "stx:libwidg" => "stx:libbasic"
+task "stx:libwidg" => "stx:libview"
+task "stx:libwidg" => "stx:libview2"
+task "stx:libwidg" => "stx:libbasic2"
+task "stx:libwidg" => "stx:libbasic3"
+task "stx:libwidg" => "stx:libui"
+
+task "stx:libui" => "stx:libbasic"
+task "stx:libui" => "stx:libview"
+
+task "stx:libview" => "stx:libbasic"
+task "stx:libview" => "stx:libbasic2"
+
+task "stx:libjava/examples/chat" => "stx:libbasic"
+task "stx:libjava/examples/chat" => "stx:libview2"
+task "stx:libjava/examples/chat" => "stx:libbasic2"
+task "stx:libjava/examples/chat" => "stx:libjava"
+task "stx:libjava/examples/chat" => "stx:libcomp"
+task "stx:libjava/examples/chat" => "stx:libview"
+task "stx:libjava/examples/chat" => "stx:libwidg"
+task "stx:libjava/examples/chat" => "stx:libwidg2"
+task "stx:libjava/examples/chat" => "stx:libui"
+
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/chat/chat.nsi Tue Sep 24 00:11:53 2013 +0100
@@ -0,0 +1,206 @@
+; $Header$
+; Script generated by ProjectDefinition.
+
+!define PRODUCT_NAME "Chat"
+!define PRODUCT_FILENAME "Chat"
+!define PRODUCT_VERSION "6.2.3.0"
+!define PRODUCT_PUBLISHER "eXept Software AG"
+!define PRODUCT_WEB_SITE "http://www.exept.de"
+!define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_FILENAME}"
+!define PRODUCT_UNINST_ROOT_KEY "HKLM"
+
+!define STX_ROOT "..\..\..\.."
+
+SetCompressor /solid lzma
+
+!include "MUI2.nsh"
+!include "x64.nsh"
+
+; MUI Settings
+
+!define MUI_WELCOMEPAGE_TITLE_3LINES
+!define MUI_ABORTWARNING
+!define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\modern-install.ico"
+;; !define MUI_ICON "nil.ico"
+!define MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\modern-uninstall.ico"
+;; !define MUI_UNICON "nil.ico"
+
+; Language Selection Dialog Settings
+!define MUI_LANGDLL_REGISTRY_ROOT "${PRODUCT_UNINST_ROOT_KEY}"
+!define MUI_LANGDLL_REGISTRY_KEY "${PRODUCT_UNINST_KEY}"
+!define MUI_LANGDLL_REGISTRY_VALUENAME "NSIS:Language"
+
+; Welcome page
+!insertmacro MUI_PAGE_WELCOME
+; License page
+; !define MUI_LICENSEPAGE_CHECKBOX
+
+
+!insertmacro MUI_PAGE_COMPONENTS
+; Directory page
+!insertmacro MUI_PAGE_DIRECTORY
+; Instfiles page
+!insertmacro MUI_PAGE_INSTFILES
+; Finish page
+!insertmacro MUI_PAGE_FINISH
+
+; Uninstaller pages
+!insertmacro MUI_UNPAGE_INSTFILES
+
+; Language files
+!insertmacro MUI_LANGUAGE "English"
+!insertmacro MUI_LANGUAGE "German"
+
+; MUI end ------
+
+
+
+Name "${PRODUCT_NAME} ${PRODUCT_VERSION}"
+VIProductVersion "${PRODUCT_VERSION}.0"
+VIAddVersionKey /LANG=${LANG_ENGLISH} "ProductName" "${PRODUCT_NAME}"
+VIAddVersionKey /LANG=${LANG_ENGLISH} "CompanyName" "${PRODUCT_PUBLISHER}"
+VIAddVersionKey /LANG=${LANG_ENGLISH} "FileVersion" "6.2.32767.32767"
+VIAddVersionKey /LANG=${LANG_ENGLISH} "FileDescription" "${PRODUCT_NAME} Installer"
+VIAddVersionKey /LANG=${LANG_ENGLISH} "ProductVersion" "${PRODUCT_VERSION}"
+VIAddVersionKey /LANG=${LANG_ENGLISH} "LegalCopyright" "Copyright Jan Vrany 2013"
+
+
+OutFile "ChatSetup.exe"
+InstallDir "$PROGRAMFILES\chat"
+ShowInstDetails show
+ShowUnInstDetails show
+
+Function .onInit
+ !insertmacro MUI_LANGDLL_DISPLAY
+FunctionEnd
+
+InstType Full
+InstType Partial
+
+Section "Programme" Section1
+ SectionIn 1 2
+ SetOutPath "$INSTDIR\bin"
+ SetOverwrite ifnewer
+ File "chat.exe"
+ File "*.dll"
+ File "symbols.stc"
+ File "*.stx"
+ File "*.rc"
+ File /r /x CVS /x ".*" resources
+
+
+
+
+
+ WriteRegStr HKCR "Stx.Chat.1" "" "Chat File"
+ WriteRegStr HKCR "Stx.Chat.1\DefaultIcon" "" '$INSTDIR\bin\chat.exe,0'
+ WriteRegStr HKCR "Stx.Chat.1\Shell\open" "" $(appOpen)
+ WriteRegStr HKCR "Stx.Chat.1\Shell\open\command" "" '"$INSTDIR\bin\chat.exe" -- "%1"'
+SectionEnd
+
+;; Section "Online-Documentation for Chat" Section2
+;; SectionIn 1
+;; SetOutPath "$INSTDIR\doc"
+;; SetOverwrite ifnewer
+;; File /r /x CVS "${STX_ROOT}\stx\chat\doc\*"
+;; SectionEnd
+
+;; Section "Chat Libraries and Demos" Section3
+;; SectionIn 1
+;; SetOutPath "$INSTDIR\lib"
+;; SetOverwrite ifnewer
+;; ; File /r /x CVS "${STX_ROOT}\stx\chat\examples\*"
+;; SectionEnd
+;;
+;; Section "Chat Reports and Printing" Section4
+;; SectionIn 1
+;; SetOutPath "$INSTDIR\reportGenerator"
+;; SetOverwrite ifnewer
+;; ; File /r /x CVS "..\reportGenerator\java" "..\reportGenerator\rules" "..\reportGenerator\*.xml" "..\reportGenerator\*.xslt" "..\reportGenerator\CloseApp.exe" "..\reportGenerator\expecco.jpg"
+;; SectionEnd
+
+
+
+
+
+
+
+
+Section -AdditionalIcons
+ SetOutPath "$INSTDIR\bin"
+ WriteIniStr "$INSTDIR\${PRODUCT_FILENAME}.url" "InternetShortcut" "URL" "${PRODUCT_WEB_SITE}"
+ CreateDirectory "$SMPROGRAMS\${PRODUCT_FILENAME}"
+ CreateShortCut "$SMPROGRAMS\${PRODUCT_FILENAME}\chat.lnk" "$INSTDIR\bin\chat.exe"
+ CreateShortCut "$DESKTOP\chat.lnk" "$INSTDIR\bin\chat.exe"
+ CreateShortCut "$SMPROGRAMS\${PRODUCT_FILENAME}\Website.lnk" "$INSTDIR\${PRODUCT_FILENAME}.url"
+ CreateShortCut "$SMPROGRAMS\${PRODUCT_FILENAME}\Uninstall.lnk" "$INSTDIR\uninst.exe"
+SectionEnd
+
+Section -Post
+ WriteUninstaller "$INSTDIR\uninst.exe"
+ WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayName" "$(^Name)"
+ WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\uninst.exe"
+ WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}"
+ WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "URLInfoAbout" "${PRODUCT_WEB_SITE}"
+ WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "Publisher" "${PRODUCT_PUBLISHER}"
+SectionEnd
+
+LangString appOpen ${LANG_GERMAN} "Mit Chat öffnen"
+LangString appOpen ${LANG_ENGLISH} "Open with Chat"
+
+LangString DESC_Section1 ${LANG_ENGLISH} "Program components of Chat"
+LangString DESC_Section1 ${LANG_GERMAN} "Alle Programmkomponenten von Chat"
+;; LangString DESC_Section2 ${LANG_ENGLISH} "Online-Documentation of Chat"
+;; LangString DESC_Section2 ${LANG_GERMAN} "Online-Dokumentation zu Chat"
+;; LangString DESC_Section3 ${LANG_ENGLISH} "Libraries and Demo Projects"
+;; LangString DESC_Section3 ${LANG_GERMAN} "Bibliotheken und Beispielprojekte"
+;; LangString DESC_Section4 ${LANG_ENGLISH} "Logfile Printing and Report Generation"
+;; LangString DESC_Section4 ${LANG_GERMAN} "Drucken und Report-Generierung aus Log-Dateien"
+;; LangString DESC_Section3 ${LANG_ENGLISH} "Sources of ST/X (Base-System)"
+;; LangString DESC_Section3 ${LANG_GERMAN} "Quellcode von ST/X (Basis-System)"
+;; LangString DESC_Section4 ${LANG_ENGLISH} "Sources of Chat"
+;; LangString DESC_Section4 ${LANG_GERMAN} "Quellcode von Chat"
+
+
+!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
+ !insertmacro MUI_DESCRIPTION_TEXT ${Section1} $(DESC_Section1)
+;; !insertmacro MUI_DESCRIPTION_TEXT ${Section2} $(DESC_Section2)
+;; !insertmacro MUI_DESCRIPTION_TEXT ${Section3} $(DESC_Section3)
+;; !insertmacro MUI_DESCRIPTION_TEXT ${Section4} $(DESC_Section4)
+
+!insertmacro MUI_FUNCTION_DESCRIPTION_END
+
+
+
+Function un.onUninstSuccess
+ HideWindow
+ MessageBox MB_ICONINFORMATION|MB_OK "Chat wurde erfolgreich deinstalliert"
+FunctionEnd
+
+Function un.onInit
+!insertmacro MUI_UNGETLANGUAGE
+ MessageBox MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 "Möchten Sie Chat und alle seine Komponenten deinstallieren?" IDYES +2
+ Abort
+FunctionEnd
+
+Section Uninstall
+ Delete "$INSTDIR\${PRODUCT_FILENAME}.url"
+ Delete "$INSTDIR\uninst.exe"
+
+ Delete "$INSTDIR\*"
+ RMDir /r "$INSTDIR"
+
+ Delete "$SMPROGRAMS\${PRODUCT_FILENAME}\Uninstall.lnk"
+ Delete "$SMPROGRAMS\${PRODUCT_FILENAME}\Website.lnk"
+ Delete "$SMPROGRAMS\${PRODUCT_FILENAME}\chat.lnk"
+ Delete "$DESKTOP\chat.lnk"
+
+ RMDir "$SMPROGRAMS\${PRODUCT_FILENAME}"
+
+ DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}"
+ DeleteRegKey HKCR "Stx.Chat.1"
+
+
+
+ SetAutoClose true
+SectionEnd
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/chat/chatWinRC.rc Tue Sep 24 00:11:53 2013 +0100
@@ -0,0 +1,49 @@
+//
+// DO NOT EDIT
+// automagically generated from the projectDefinition: stx_libjava_examples_chat.
+//
+#define IDR_MAINFRAME 128
+#define IDR_SPLASH 129
+
+#if (__BORLANDC__)
+LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
+#endif
+
+#pragma code_page(1252)
+
+
+
+VS_VERSION_INFO VERSIONINFO
+ FILEVERSION 6,2,32767,32767
+ PRODUCTVERSION 6,2,3,0
+#if (__BORLANDC__)
+ FILEFLAGSMASK VS_FF_DEBUG | VS_FF_PRERELEASE
+ FILEFLAGS VS_FF_PRERELEASE | VS_FF_SPECIALBUILD
+ FILEOS VOS_NT_WINDOWS32
+ FILETYPE VFT_DLL
+ FILESUBTYPE VS_USER_DEFINED
+#else
+ FILEFLAGSMASK 0x3fL
+#endif
+
+BEGIN
+ BLOCK "StringFileInfo"
+ BEGIN
+ BLOCK "040904E4"
+ BEGIN
+ VALUE "CompanyName", "SWING Research Group\0"
+ VALUE "FileDescription", "Very Simple Jabber Client\0"
+ VALUE "FileVersion", "6.2.32767.32767\0"
+ VALUE "InternalName", "stx:libjava/examples/chat\0"
+ VALUE "LegalCopyright", "Copyright Jan Vrany 2013\0"
+ VALUE "ProductName", "Chat\0"
+ VALUE "ProductVersion", "6.2.3.0\0"
+ VALUE "ProductDate", "Mon, 23 Sep 2013 23:11:09 GMT\0"
+ END
+ END
+
+ BLOCK "VarFileInfo"
+ BEGIN // Language | Translation
+ VALUE "Translation", 0x409, 0x4E4 // U.S. English, Windows Multilingual
+ END
+END
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/chat/lccmake.bat Tue Sep 24 00:11:53 2013 +0100
@@ -0,0 +1,8 @@
+@REM -------
+@REM make using lcc compiler
+@REM type lccmake, and wait...
+@REM do not edit - automatically generated from ProjectDefinition
+@REM -------
+make.exe -N -f bc.mak -DUSELCC=1 %*
+
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/chat/mingwmake.bat Tue Sep 24 00:11:53 2013 +0100
@@ -0,0 +1,16 @@
+@REM -------
+@REM make using mingw gnu compiler
+@REM type mingwmake, and wait...
+@REM do not edit - automatically generated from ProjectDefinition
+@REM -------
+@SET DEFINES=
+@REM Kludge got Mercurial, cannot be implemented in Borland make
+@FOR /F "tokens=*" %%i in ('hg root') do SET HGROOT=%%i
+@IF "%HGROOT%" NEQ "" SET DEFINES=%DEFINES% "-DHGROOT=%HGROOT%"
+
+@pushd ..\..\..\rules
+@call find_mingw.bat
+@popd
+make.exe -N -f bc.mak %DEFINES% %USEMINGW_ARG% %*
+
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/chat/modules.c Tue Sep 24 00:11:53 2013 +0100
@@ -0,0 +1,26 @@
+/* $Header$
+ *
+ * DO NOT EDIT
+ * automagically generated from the projectDefinition: stx_libjava_examples_chat.
+ *
+ * Warning: once you modify this file, do not rerun
+ * stmkmp or projectDefinition-build again - otherwise, your changes are lost.
+ */
+typedef void (*vf)();
+
+extern void _Chat_Init();
+extern void _ChatStart_Init();
+extern void _ChatWindow_Init();
+extern void _stx_137libjava_137examples_137chat_Init();
+
+
+static vf modules[] = {
+ _Chat_Init,
+_ChatStart_Init,
+_ChatWindow_Init,
+_stx_137libjava_137examples_137chat_Init,
+
+ (vf)0
+};
+
+vf *__modules__ = modules;
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/chat/modules.stx Tue Sep 24 00:11:53 2013 +0100
@@ -0,0 +1,31 @@
+# $Header$
+#
+# DO NOT EDIT
+# automagically generated from the projectDefinition: stx_libjava_examples_chat.
+#
+# Warning: once you modify this file, do not rerun
+# stmkmp or projectDefinition-build again - otherwise, your changes are lost.
+#
+# This file is (currently) only used with win-95 / win-NT versions of STX.
+# It lists the dll's which are to be loaded at startup time.
+# Notice, lines starting with a "#" are comments.
+# Lines starting with a "*" are treated as comments by the VM, but are usually loaded
+# by the application at the very beginning.
+#
+# All classes loaded at startup time will be present as precompiled classes.
+# Others might be autoloaded or loaded explicit using "Smalltalk loadPackage:xxx".
+#
+libstx_libbasic
+libstx_libbasic2
+libstx_libcomp
+libstx_libbasic3
+libstx_libview
+libstx_libui
+libstx_libview2
+libstx_goodies_sunit
+libstx_libwidg
+libstx_libhtml
+libstx_libwidg2
+libstx_libtool
+libstx_libjava
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/chat/stx_libjava_examples_chat.st Tue Sep 24 00:11:53 2013 +0100
@@ -0,0 +1,243 @@
+"{ Package: 'stx:libjava/examples/chat' }"
+
+ApplicationDefinition subclass:#stx_libjava_examples_chat
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'* Projects & Packages *'
+!
+
+
+!stx_libjava_examples_chat class methodsFor:'description'!
+
+excludedFromPreRequisites
+ "list all packages which should be ignored in the automatic
+ preRequisites scan. See #preRequisites for more."
+
+ ^ #(
+ )
+!
+
+isGUIApplication
+ "return true, if this is a GUI application.
+ (these need more libraries and use a different startup procedure)"
+
+ ^ true
+!
+
+mandatoryPreRequisites
+ "list all required mandatory packages.
+ Packages are mandatory, if they contain superclasses of the package's classes
+ or classes which are extended by this package.
+ This list can be maintained manually or (better) generated and
+ updated by scanning the superclass hierarchies
+ (the browser has a menu function for that)"
+
+ ^ #(
+ #'stx:libbasic' "ApplicationDefinition - superclass of stx_libjava_examples_chat "
+ #'stx:libview2' "ApplicationModel - superclass of Chat "
+ )
+!
+
+referencedPreRequisites
+ "list all packages containing classes referenced by the packages's members.
+ This list can be maintained manually or (better) generated and
+ updated by looking for global variable accesses
+ (the browser has a menu function for that)
+ However, often too much is found, and you may want to explicitely
+ exclude individual packages in the #excludedFromPreRequisites method."
+
+ ^ #(
+ #'stx:libbasic2' "UUID - referenced by ChatStart class>>applicationUUID "
+ #'stx:libjava' "Java - referenced by ChatStart class>>realMain: "
+ )
+!
+
+subProjects
+ "list packages which are known as subprojects.
+ This method is generated automatically; however, when generating automatically,
+ packages are only added - never removed, unless listed in #excludedFromSubProjects."
+
+ ^ #(
+)
+! !
+
+!stx_libjava_examples_chat class methodsFor:'description - compilation'!
+
+additionalRules_bc_dot_mak
+ ^ '
+java: ant
+
+ant:
+ ant -f java\build.xml
+
+antIfPossible:
+ -ant -f java\build.xml
+
+full:: ant
+
+$(ZLIB):
+ cd $(ZLIB_DIR)
+ $(MAKE) $(MAKE_ZLIB_ARG) $(ZLIB)
+ cd ..\..\libjava
+
+$(BZ2LIB):
+ cd $(BZ2LIB_DIR)
+ $(MAKE) $(MAKE_BZ2LIB_ARG) bz2.lib
+ cd ..\..\libjava
+
+support\fdlibm\libfdm.lib:
+ cd support\fdlibm
+ $(MAKE) -f Makefile.bcc
+ cd ..\..
+
+'
+
+ "Modified: / 26-02-2013 / 16:51:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+additionalRules_make_dot_proto
+ ^ '
+java: ant
+
+ant:
+ ant -f java/build.xml
+
+antIfPossible:
+ -ant -f java/build.xml
+
+full:: ant
+
+zlib:
+ cd $(ZLIB_DIR); $(MAKE) $(MAKE_ZLIB_ARG)
+
+support/fdlibm/libfdm.a:
+ $(MAKE) CCCONFOPT="$(CCCONFOPT)" -C support/fdlibm
+
+'
+
+ "Modified: / 26-02-2013 / 16:51:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+additionalTargets_bc_dot_mak
+
+ ^ '$(ZLIB) support\fdlibm\libfdm.lib antIfPossible'
+
+ "Modified: / 15-11-2012 / 23:20:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+additionalTargets_make_dot_proto
+
+ ^ ' zlib support/fdlibm/libfdm.a antIfPossible'
+
+ "Created: / 05-09-2006 / 16:05:12 / cg"
+ "Modified: / 15-11-2012 / 23:20:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!stx_libjava_examples_chat class methodsFor:'description - contents'!
+
+classNamesAndAttributes
+ "lists the classes which are to be included in the project.
+ Each entry in the list may be: a single class-name (symbol),
+ or an array-literal consisting of class name and attributes.
+ Attributes are: #autoload or #<os> where os is one of win32, unix,..."
+
+ ^ #(
+ "<className> or (<className> attributes...) in load order"
+ Chat
+ ChatStart
+ ChatWindow
+ #'stx_libjava_examples_chat'
+ )
+!
+
+extensionMethodNames
+ "lists the extension methods which are to be included in the project.
+ Entries are 2-element array literals, consisting of class-name and selector."
+
+ ^ #(
+ )
+! !
+
+!stx_libjava_examples_chat class methodsFor:'description - java'!
+
+javaBundle
+
+ ^JavaCodeBundle standardPackageBundleFor: self package
+
+ "
+ self javaBundle
+ "
+
+ "Created: / 15-01-2013 / 17:35:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified (comment): / 24-09-2013 / 00:00:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!stx_libjava_examples_chat class methodsFor:'description - project information'!
+
+applicationIconFileName
+ "Return the name (without suffix) of an icon-file (the app's icon); will be included in the rc-resource file"
+
+ ^ nil
+ "/ ^ self applicationName
+!
+
+companyName
+ "Return a companyname which will appear in <lib>.rc"
+
+ ^ 'SWING Research Group'
+
+ "Modified: / 23-09-2013 / 22:30:54 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+description
+ "Return a description string which will appear in vc.def / bc.def"
+
+ ^ 'Very Simple Jabber Client'
+
+ "Modified: / 23-09-2013 / 22:30:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+legalCopyright
+ "Return a copyright string which will appear in <lib>.rc"
+
+ ^ 'Copyright Jan Vrany 2013'
+
+ "Modified: / 23-09-2013 / 22:29:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+productInstallDirBaseName
+ "Returns a default installDir which will appear in <app>.nsi.
+ This is usually not the one you want to keep"
+
+ ^ (self package asCollectionOfSubstringsSeparatedByAny:':/') last
+!
+
+productName
+ "Return a product name which will appear in <lib>.rc"
+
+ ^ 'Chat'
+
+ "Modified: / 23-09-2013 / 22:30:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!stx_libjava_examples_chat class methodsFor:'description - startup'!
+
+startupClassName
+ "the class that starts the show in its startupSelector method"
+
+ ^ 'ChatStart'
+!
+
+startupSelector
+ "the message that is sent to the startupClass to start the show"
+
+ ^ #'start'
+! !
+
+!stx_libjava_examples_chat class methodsFor:'documentation'!
+
+version_HG
+ ^ '$Changeset: <not expanded> $'
+! !
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/chat/vcmake.bat Tue Sep 24 00:11:53 2013 +0100
@@ -0,0 +1,20 @@
+@REM -------
+@REM make using Microsoft Visual C compiler
+@REM type vcmake, and wait...
+@REM do not edit - automatically generated from ProjectDefinition
+@REM -------
+
+@if not defined VSINSTALLDIR (
+ pushd ..\..\..\rules
+ call vcsetup.bat
+ popd
+)
+@SET DEFINES=
+@REM Kludge got Mercurial, cannot be implemented in Borland make
+@FOR /F "tokens=*" %%i in ('hg root') do SET HGROOT=%%i
+@IF "%HGROOT%" NEQ "" SET DEFINES=%DEFINES% "-DHGROOT=%HGROOT%"
+make.exe -N -f bc.mak -DUSEVC=1 %DEFINES% %*
+
+
+
+