ooo-build r13398 - in trunk: . patches/dev300 src/layout/default_images src/layout/default_images/res src/layout/default_images/res/commandimagelist src/layout/ooo_custom_images src/layout/ooo_custom_images/industrial src/layout/ooo_custom_images/industrial/res src/layout/ooo_custom_images/industrial/res/commandimagelist src/layout/ooo_custom_images/tango src/layout/ooo_custom_images/tango/res src/layout/ooo_custom_images/tango/res/commandimagelist



Author: jannieuw
Date: Fri Jul 25 19:31:56 2008
New Revision: 13398
URL: http://svn.gnome.org/viewvc/ooo-build?rev=13398&view=rev

Log:
2008-07-25  Jan Nieuwenhuizen  <janneke gnu org>

	* patches/dev300/layout-simple-dialogs-scp2.diff:
	* patches/dev300/layout-simple-dialogs-solenv.diff: New file.

	* patches/dev300/apply: Add them.

	* src/layout/default_images/res/commandimagelist/msgbox-error.png:
	* src/layout/default_images/res/commandimagelist/msgbox-info.png:
	* src/layout/default_images/res/commandimagelist/msgbox-query.png:
	* src/layout/default_images/res/commandimagelist/msgbox-warning.png:
	* src/layout/ooo_custom_images/industrial/res/commandimagelist/msgbox-error.png:
	* src/layout/ooo_custom_images/industrial/res/commandimagelist/msgbox-info.png:
	* src/layout/ooo_custom_images/industrial/res/commandimagelist/msgbox-query.png:
	* src/layout/ooo_custom_images/industrial/res/commandimagelist/msgbox-warning.png:
	* src/layout/ooo_custom_images/tango/res/commandimagelist/msgbox-error.png:
	* src/layout/ooo_custom_images/tango/res/commandimagelist/msgbox-info.png:
	* src/layout/ooo_custom_images/tango/res/commandimagelist/msgbox-query.png:
	* src/layout/ooo_custom_images/tango/res/commandimagelist/msgbox-warning.png:
	New files with split content from */vcl/source/src/msgbox.png.

	* Makefile.shared: Install them.

	* patches/dev300/layout-simple-dialogs-sc.diff:
	* patches/dev300/layout-simple-dialogs-svx.diff:
	* patches/dev300/layout-simple-dialogs-sw.diff:
	* patches/dev300/layout-simple-dialogs-toolkit.diff: Update.  Implement
	layout'ed MessageBox and ErrorBox, InfoBox, QueryBox, WarningBox wrappers.
	Use them for Delete Sheet dialog.  Cleanups of layout include headers and
	uiconfig/layout makefiles.


Added:
   trunk/patches/dev300/layout-simple-dialogs-scp2.diff
   trunk/patches/dev300/layout-simple-dialogs-solenv.diff
   trunk/src/layout/default_images/
   trunk/src/layout/default_images/res/
   trunk/src/layout/default_images/res/commandimagelist/
   trunk/src/layout/default_images/res/commandimagelist/msgbox-error.png   (contents, props changed)
   trunk/src/layout/default_images/res/commandimagelist/msgbox-info.png   (contents, props changed)
   trunk/src/layout/default_images/res/commandimagelist/msgbox-query.png   (contents, props changed)
   trunk/src/layout/default_images/res/commandimagelist/msgbox-warning.png   (contents, props changed)
   trunk/src/layout/ooo_custom_images/
   trunk/src/layout/ooo_custom_images/industrial/
   trunk/src/layout/ooo_custom_images/industrial/res/
   trunk/src/layout/ooo_custom_images/industrial/res/commandimagelist/
   trunk/src/layout/ooo_custom_images/industrial/res/commandimagelist/msgbox-error.png   (contents, props changed)
   trunk/src/layout/ooo_custom_images/industrial/res/commandimagelist/msgbox-info.png   (contents, props changed)
   trunk/src/layout/ooo_custom_images/industrial/res/commandimagelist/msgbox-query.png   (contents, props changed)
   trunk/src/layout/ooo_custom_images/industrial/res/commandimagelist/msgbox-warning.png   (contents, props changed)
   trunk/src/layout/ooo_custom_images/tango/
   trunk/src/layout/ooo_custom_images/tango/res/
   trunk/src/layout/ooo_custom_images/tango/res/commandimagelist/
   trunk/src/layout/ooo_custom_images/tango/res/commandimagelist/msgbox-error.png   (contents, props changed)
   trunk/src/layout/ooo_custom_images/tango/res/commandimagelist/msgbox-info.png   (contents, props changed)
   trunk/src/layout/ooo_custom_images/tango/res/commandimagelist/msgbox-query.png   (contents, props changed)
   trunk/src/layout/ooo_custom_images/tango/res/commandimagelist/msgbox-warning.png   (contents, props changed)
Modified:
   trunk/ChangeLog
   trunk/Makefile.shared
   trunk/patches/dev300/apply
   trunk/patches/dev300/layout-simple-dialogs-sc.diff
   trunk/patches/dev300/layout-simple-dialogs-svx.diff
   trunk/patches/dev300/layout-simple-dialogs-sw.diff
   trunk/patches/dev300/layout-simple-dialogs-toolkit.diff

Modified: trunk/Makefile.shared
==============================================================================
--- trunk/Makefile.shared	(original)
+++ trunk/Makefile.shared	Fri Jul 25 19:31:56 2008
@@ -74,6 +74,7 @@
 	cp $(top_srcdir)/src/layout/*.png $(OOBUILDDIR)/default_images/res/commandimagelist
 	cp $(top_srcdir)/src/layout/*.png $(OOBUILDDIR)/ooo_custom_images/industrial/res/commandimagelist
 	cp $(top_srcdir)/src/layout/*.png $(OOBUILDDIR)/ooo_custom_images/tango/res/commandimagelist
+	tar -C $(top_srcdir)/src/layout -cf- default_images ooo_custom_images | tar -C $(OOBUILDDIR) -xf-
 	touch $@
 
 patch.apply: $(OOBUILDDIR)/unpack $(STAMP_DIR)/patch.apply 

Modified: trunk/patches/dev300/apply
==============================================================================
--- trunk/patches/dev300/apply	(original)
+++ trunk/patches/dev300/apply	Fri Jul 25 19:31:56 2008
@@ -2165,6 +2165,8 @@
 layout-simple-dialogs-offapi.diff
 layout-simple-dialogs-sc-localize.diff
 layout-simple-dialogs-sc.diff
+layout-simple-dialogs-scp2.diff
+layout-simple-dialogs-solenv.diff
 layout-simple-dialogs-svx.diff
 layout-simple-dialogs-sw.diff
 layout-simple-dialogs-toolkit.diff

Modified: trunk/patches/dev300/layout-simple-dialogs-sc.diff
==============================================================================
--- trunk/patches/dev300/layout-simple-dialogs-sc.diff	(original)
+++ trunk/patches/dev300/layout-simple-dialogs-sc.diff	Fri Jul 25 19:31:56 2008
@@ -73,7 +73,7 @@
  #endif // SC_STRINDLG_HXX
  
 diff --git a/sc/source/ui/miscdlgs/instbdlg.cxx b/sc/source/ui/miscdlgs/instbdlg.cxx
-index 60b49e8..f772631 100644
+index 24d8b97..a3a57d9 100644
 --- sc/source/ui/miscdlgs/instbdlg.cxx
 +++ sc/source/ui/miscdlgs/instbdlg.cxx
 @@ -55,6 +55,17 @@
@@ -105,7 +105,7 @@
      Init_Impl( bFromFile );
  	FreeResource();
  }
-@@ -152,6 +167,10 @@ void ScInsertTableDlg::Init_Impl( bool bFromFile )
+@@ -146,6 +161,10 @@ void ScInsertTableDlg::Init_Impl( bool bFromFile )
  
  //------------------------------------------------------------------------
  
@@ -116,7 +116,7 @@
  short __EXPORT ScInsertTableDlg::Execute()
  {
      // set Parent of DocumentInserter and Doc-Manager
-@@ -162,6 +181,7 @@ short __EXPORT ScInsertTableDlg::Execute()
+@@ -156,6 +175,7 @@ short __EXPORT ScInsertTableDlg::Execute()
          aBrowseTimer.Start();
  
      short nRet = ModalDialog::Execute();
@@ -158,6 +158,51 @@
  # --- Files --------------------------------------------------------
  # drawattr.cxx fuer IDL (enums), sollte in den Svx gehen??
  
+diff --git a/sc/source/ui/view/tabvwshf.cxx b/sc/source/ui/view/tabvwshf.cxx
+index c77c556..7c12966 100644
+--- sc/source/ui/view/tabvwshf.cxx
++++ sc/source/ui/view/tabvwshf.cxx
+@@ -40,6 +40,7 @@
+ #include <sfx2/bindings.hxx>
+ #include <sfx2/viewfrm.hxx>
+ #include <basic/sbstar.hxx>
++#include <layout/layout.hxx>
+ #include <svtools/languageoptions.hxx>
+ #include <svtools/stritem.hxx>
+ #include <svtools/whiter.hxx>
+@@ -57,7 +58,6 @@
+ //CHINA001 #include "mvtabdlg.hxx"
+ #include "docfunc.hxx"
+ 
+-
+ #include "scabstdlg.hxx" //CHINA001
+ 
+ #define IS_AVAILABLE(WhichId,ppItem) \
+@@ -623,11 +623,19 @@ void ScTabViewShell::ExecuteTable( SfxRequest& rReq )
+ 				{
+ 					//	wenn's nicht von Basic kommt, nochmal nachfragen:
+ 
+-					bDoIt = ( RET_YES ==
+-							  QueryBox( GetDialogParent(),
+-										WinBits( WB_YES_NO | WB_DEF_YES ),
+-										ScGlobal::GetRscString(STR_QUERY_DELTAB)
+-									   ).Execute() );
++#if ENABLE_LAYOUT
++//This is plural: delete sheetS, but plural is used in the English and German questions too
++//Guess Dutch is broken
++#define QueryBox( parent, winbits, question ) layout::QueryBox (parent, question, ScGlobal::GetRscString (STR_UNDO_DELETE_TAB))
++//Seems OK in en-US, nl, de; this string has no `contents' or `undo', only delete...
++//#define QueryBox( parent, winbits, question ) layout::QueryBox (parent, question, ScGlobal::GetRscString (STR_UNDO_DELETECONTENTS))
++#endif /* ENABLE_LAYOUT */
++
++                        bDoIt = ( RET_YES ==
++                                  QueryBox( GetDialogParent(),
++                                            WinBits( WB_YES_NO | WB_DEF_YES ),
++                                            ScGlobal::GetRscString(STR_QUERY_DELTAB)
++                                      ).Execute() );
+ 				}
+ 				if( bDoIt )
+ 				{
 diff --git a/sc/uiconfig/layout/insert-sheet.xml b/sc/uiconfig/layout/insert-sheet.xml
 new file mode 100644
 index 0000000..0ce5843
@@ -221,6 +266,45 @@
 +	</dialogbuttonhbox>
 +    </vbox>
 +</modaldialog>
+diff --git a/sc/uiconfig/layout/layout.mk b/sc/uiconfig/layout/layout.mk
+deleted file mode 100644
+index 8c939b0..0000000
+--- sc/uiconfig/layout/layout.mk
++++ /dev/null
+@@ -1,33 +0,0 @@
+-# TODO: move to solenv/inc
+-# copies: sc/uiconfig/layout svx/uiconfig/layout sw/uiconfig/layout
+-
+-TRALAY=tralay
+-XML_DEST=$(DLLDEST)
+-XML_LANGS=$(alllangiso)
+-
+-ALL_XMLS=$(foreach,i,$(XML_FILES) $(XML_DEST)/$i) $(foreach,i,$(XML_LANGS) $(foreach,j,$(XML_FILES) $(XML_DEST)/$i/$j))
+-
+-# Must remove the -j (no duplicate base file names) flag
+-ZIPUPDATE=-u
+-XML_ZIP = $(PRJNAME)-layout
+-
+-ALLTAR: $(XML_ZIP)
+-
+-$(XML_ZIP): $(ALL_XMLS)
+-
+-ZIP1DIR=$(XML_DEST)
+-ZIP1TARGET=$(XML_ZIP)
+-ZIP1LIST=$(ALL_XMLS:s $(XML_DEST)/@@)
+-
+-$(foreach,i,$(XML_LANGS) $(XML_DEST)/$i/%.xml): %.xml
+-	-$(MKDIR) $(@:d)
+-	@echo $(foreach,i,$(XML_LANGS) $(XML_DEST)/$i/%.xml): %.xml
+-	$(TRALAY) -m localize.sdf -o $(XML_DEST) -l $(XML_LANGS:f:t" -l ") $<
+-
+-$(XML_DEST)/%.xml: %.xml
+-	-$(MKDIR) $(@:d)
+-	$(COPY) $< $@
+-
+-# Don't want to overwrite filled localize.sdf with empty template
+-template.sdf:
+-	$(foreach,i,$(XML_FILES) $(TRALAY) -l en-US $i) > $@
 diff --git a/sc/uiconfig/layout/makefile.mk b/sc/uiconfig/layout/makefile.mk
 index 274d9a9..7697de3 100644
 --- sc/uiconfig/layout/makefile.mk

Added: trunk/patches/dev300/layout-simple-dialogs-scp2.diff
==============================================================================
--- (empty file)
+++ trunk/patches/dev300/layout-simple-dialogs-scp2.diff	Fri Jul 25 19:31:56 2008
@@ -0,0 +1,18 @@
+diff --git a/scp2/source/layout/layout.scp b/scp2/source/layout/layout.scp
+index 6808269..c7c2983 100644
+--- scp2/source/layout/layout.scp
++++ scp2/source/layout/layout.scp
+@@ -35,6 +35,13 @@ Directory gid_Dir_Share_Layout
+     DosName = "layout";
+ End
+ 
++File gid_File_Zip_Toolkit_Layout
++   Dir = gid_Dir_Share_Layout;
++   USER_FILE_BODY;
++   Styles = (ARCHIVE, PATCH);
++   Name = "toolkit-layout.zip";
++End
++
+ File gid_File_Zip_Sc_Layout
+    Dir = gid_Dir_Share_Layout;
+    USER_FILE_BODY;

Added: trunk/patches/dev300/layout-simple-dialogs-solenv.diff
==============================================================================
--- (empty file)
+++ trunk/patches/dev300/layout-simple-dialogs-solenv.diff	Fri Jul 25 19:31:56 2008
@@ -0,0 +1,66 @@
+diff --git a/solenv/bin/modules/installer/worker.pm b/solenv/bin/modules/installer/worker.pm
+index c199345..64d82e5 100644
+--- solenv/bin/modules/installer/worker.pm
++++ solenv/bin/modules/installer/worker.pm
+@@ -797,7 +797,7 @@ sub install_simple ($$$$$$)
+ 
+ 		push @lines, "$destination\n";
+ 		# printf "cp $sourcepath $destdir$destination\n";
+-		copy ("$sourcepath", "$destdir$destination") || die "Can't copy file: $!";
++		copy ("$sourcepath", "$destdir$destination") || die "Can't copy file: $sourcepath -> $destdir$destination $!";
+ 		my $sourcestat = stat($sourcepath);
+ 		utime ($sourcestat->atime, $sourcestat->mtime, "$destdir$destination");
+ 		chmod (oct($unixrights), "$destdir$destination") || die "Can't change permissions: $!";
+diff --git a/solenv/inc/layout.mk b/solenv/inc/layout.mk
+new file mode 100644
+index 0000000..1da2eec
+--- /dev/null
++++ solenv/inc/layout.mk
+@@ -0,0 +1,30 @@
++TRALAY=tralay
++XML_DEST=$(DLLDEST)
++XML_LANGS=$(alllangiso)
++
++ALL_XMLS=$(foreach,i,$(XML_FILES) $(XML_DEST)/$i) $(foreach,i,$(XML_LANGS) $(foreach,j,$(XML_FILES) $(XML_DEST)/$i/$j))
++
++# Must remove the -j (no duplicate base file names) flag
++ZIPUPDATE=-u
++XML_ZIP = $(PRJNAME)-layout
++
++ALLTAR: $(XML_ZIP)
++
++$(XML_ZIP): $(ALL_XMLS)
++
++ZIP1DIR=$(XML_DEST)
++ZIP1TARGET=$(XML_ZIP)
++ZIP1LIST=$(ALL_XMLS:s $(XML_DEST)/@@)
++
++$(foreach,i,$(XML_LANGS) $(XML_DEST)/$i/%.xml): %.xml
++	-$(MKDIR) $(@:d)
++	@echo $(foreach,i,$(XML_LANGS) $(XML_DEST)/$i/%.xml): %.xml
++	$(TRALAY) -m localize.sdf -o $(XML_DEST) -l $(XML_LANGS:f:t" -l ") $<
++
++$(XML_DEST)/%.xml: %.xml
++	-$(MKDIR) $(@:d)
++	$(COPY) $< $@
++
++# Don't want to overwrite filled localize.sdf with empty template
++template.sdf:
++	$(foreach,i,$(XML_FILES) $(TRALAY) -l en-US $i) > $@
+diff --git a/solenv/inc/settings.mk b/solenv/inc/settings.mk
+index 9cf78b0..5d2a632 100644
+--- solenv/inc/settings.mk
++++ solenv/inc/settings.mk
+@@ -1092,6 +1092,12 @@ LOCAL_EXCEPTIONS_FLAGS+=-DEXCEPTIONS_ON
+ CDEFS+=-DGSTREAMER
+ .ENDIF
+ 
++.IF "$(ENABLE_LAYOUT)" == "TRUE"
++CDEFS+=-DENABLE_LAYOUT=1
++.ELSE # ENABLE_LAYOUT != TRUE
++CFLAGS+=-DENABLE_LAYOUT=0
++.ENDIF # ENABLE_LAYOUT != TRUE
++
+ # compose flags and defines for GUI
+ .IF "$(TARGETTYPE)"=="GUI"
+ CDEFS+= $(CDEFSGUI)

Modified: trunk/patches/dev300/layout-simple-dialogs-svx.diff
==============================================================================
--- trunk/patches/dev300/layout-simple-dialogs-svx.diff	(original)
+++ trunk/patches/dev300/layout-simple-dialogs-svx.diff	Fri Jul 25 19:31:56 2008
@@ -41,6 +41,45 @@
  	Link aLink = LINK( this, SvxZoomDialog, UserHdl );
      a100Btn.SetClickHdl( aLink );
      aOptimalBtn.SetClickHdl( aLink );
+diff --git a/svx/uiconfig/layout/layout.mk b/svx/uiconfig/layout/layout.mk
+deleted file mode 100644
+index 8c939b0..0000000
+--- svx/uiconfig/layout/layout.mk
++++ /dev/null
+@@ -1,33 +0,0 @@
+-# TODO: move to solenv/inc
+-# copies: sc/uiconfig/layout svx/uiconfig/layout sw/uiconfig/layout
+-
+-TRALAY=tralay
+-XML_DEST=$(DLLDEST)
+-XML_LANGS=$(alllangiso)
+-
+-ALL_XMLS=$(foreach,i,$(XML_FILES) $(XML_DEST)/$i) $(foreach,i,$(XML_LANGS) $(foreach,j,$(XML_FILES) $(XML_DEST)/$i/$j))
+-
+-# Must remove the -j (no duplicate base file names) flag
+-ZIPUPDATE=-u
+-XML_ZIP = $(PRJNAME)-layout
+-
+-ALLTAR: $(XML_ZIP)
+-
+-$(XML_ZIP): $(ALL_XMLS)
+-
+-ZIP1DIR=$(XML_DEST)
+-ZIP1TARGET=$(XML_ZIP)
+-ZIP1LIST=$(ALL_XMLS:s $(XML_DEST)/@@)
+-
+-$(foreach,i,$(XML_LANGS) $(XML_DEST)/$i/%.xml): %.xml
+-	-$(MKDIR) $(@:d)
+-	@echo $(foreach,i,$(XML_LANGS) $(XML_DEST)/$i/%.xml): %.xml
+-	$(TRALAY) -m localize.sdf -o $(XML_DEST) -l $(XML_LANGS:f:t" -l ") $<
+-
+-$(XML_DEST)/%.xml: %.xml
+-	-$(MKDIR) $(@:d)
+-	$(COPY) $< $@
+-
+-# Don't want to overwrite filled localize.sdf with empty template
+-template.sdf:
+-	$(foreach,i,$(XML_FILES) $(TRALAY) -l en-US $i) > $@
 diff --git a/svx/uiconfig/layout/zoom.xml b/svx/uiconfig/layout/zoom.xml
 index abed333..f6a76a4 100644
 --- svx/uiconfig/layout/zoom.xml

Modified: trunk/patches/dev300/layout-simple-dialogs-sw.diff
==============================================================================
--- trunk/patches/dev300/layout-simple-dialogs-sw.diff	(original)
+++ trunk/patches/dev300/layout-simple-dialogs-sw.diff	Fri Jul 25 19:31:56 2008
@@ -43,3 +43,42 @@
      FreeResource();
  }
  /*-- 06.04.2004 16:05:56---------------------------------------------------
+diff --git a/sw/uiconfig/layout/layout.mk b/sw/uiconfig/layout/layout.mk
+deleted file mode 100644
+index 88164bb..0000000
+--- sw/uiconfig/layout/layout.mk
++++ /dev/null
+@@ -1,33 +0,0 @@
+-# TODO: move to solenv/inc
+-# copies: sw/uiconfig/layout svx/uiconfig/layout
+-
+-TRALAY=tralay
+-XML_DEST=$(DLLDEST)
+-XML_LANGS=$(alllangiso)
+-
+-ALL_XMLS=$(foreach,i,$(XML_FILES) $(XML_DEST)/$i) $(foreach,i,$(XML_LANGS) $(foreach,j,$(XML_FILES) $(XML_DEST)/$i/$j))
+-
+-# Must remove the -j (no duplicate base file names) flag
+-ZIPUPDATE=-u
+-XML_ZIP = $(PRJNAME)-layout
+-
+-ALLTAR: $(XML_ZIP)
+-
+-$(XML_ZIP): $(ALL_XMLS)
+-
+-ZIP1DIR=$(XML_DEST)
+-ZIP1TARGET=$(XML_ZIP)
+-ZIP1LIST=$(ALL_XMLS:s $(XML_DEST)/@@)
+-
+-$(foreach,i,$(XML_LANGS) $(XML_DEST)/$i/%.xml): %.xml
+-	-$(MKDIR) $(@:d)
+-	@echo $(foreach,i,$(XML_LANGS) $(XML_DEST)/$i/%.xml): %.xml
+-	$(TRALAY) -m localize.sdf -o $(XML_DEST) -l $(XML_LANGS:f:t" -l ") $<
+-
+-$(XML_DEST)/%.xml: %.xml
+-	-$(MKDIR) $(@:d)
+-	$(COPY) $< $@
+-
+-# Don't want to overwrite filled localize.sdf with empty template
+-template.sdf:
+-	$(foreach,i,$(XML_FILES) $(TRALAY) -l en-US $i) > $@

Modified: trunk/patches/dev300/layout-simple-dialogs-toolkit.diff
==============================================================================
--- trunk/patches/dev300/layout-simple-dialogs-toolkit.diff	(original)
+++ trunk/patches/dev300/layout-simple-dialogs-toolkit.diff	Fri Jul 25 19:31:56 2008
@@ -33,20 +33,37 @@
  
  * i18n
 diff --git a/toolkit/inc/layout/layout-post.hxx b/toolkit/inc/layout/layout-post.hxx
-index 09f90bf..b8c86cf 100644
+index 09f90bf..45f047c 100644
 --- toolkit/inc/layout/layout-post.hxx
 +++ toolkit/inc/layout/layout-post.hxx
-@@ -38,6 +38,9 @@
+@@ -38,6 +38,10 @@
  
  #if ENABLE_LAYOUT
  
 +/* Allow re-inclusion for cxx file. */
 +#undef _LAYOUT_PRE_HXX
 +
++
  #undef AdvancedButton
  #undef ApplyButton
  #undef Box
-@@ -61,6 +64,7 @@
+@@ -49,6 +53,7 @@
+ #undef Control
+ #undef Dialog
+ #undef Edit
++#undef ErrorBox
+ #undef FixedImage
+ #undef FixedInfo
+ #undef FixedLine
+@@ -56,11 +61,15 @@
+ #undef HBox
+ #undef HelpButton
+ #undef IgnoreButton
++#undef InfoBox
+ #undef ListBox
++#undef MessBox
++#undef MessageBox
+ #undef MetricField
  #undef MetricFormatter
  #undef MoreButton
  #undef MultiLineEdit
@@ -54,15 +71,29 @@
  #undef NoButton
  #undef NumericField
  #undef NumericFormatter
-@@ -77,6 +81,7 @@
+@@ -68,17 +77,20 @@
+ #undef Plugin
+ #undef ProgressBar
+ #undef PushButton
++#undef QueryBox
+ #undef RadioButton
+ #undef ResetButton
+ #undef RetryButton
+ #undef SpinField
+-#undef Table
+ #undef TabPage
++#undef Table
  #undef VBox
++#undef WarningBox
  #undef YesButton
  
-+#undef ScExpandedFixedText
  #undef ModalDialog
  #undef ModelessDialog
++#undef ScExpandedFixedText
  #undef SfxModalDialog
-@@ -86,18 +91,6 @@
+ #undef SfxTabPage
+ 
+@@ -86,18 +98,6 @@
  
  #undef Window
  
@@ -82,7 +113,7 @@
  
  #endif /* _LAYOUT_POST_HXX */
 diff --git a/toolkit/inc/layout/layout-pre.hxx b/toolkit/inc/layout/layout-pre.hxx
-index 327da0b..3c9cf87 100644
+index 327da0b..fb70789 100644
 --- toolkit/inc/layout/layout-pre.hxx
 +++ toolkit/inc/layout/layout-pre.hxx
 @@ -38,15 +38,8 @@
@@ -103,7 +134,23 @@
  
  #define AdvancedButton layout::AdvancedButton
  #define ApplyButton layout::ApplyButton
-@@ -71,6 +64,7 @@
+@@ -59,6 +52,7 @@
+ #define Control layout::Control
+ #define Dialog layout::Dialog
+ #define Edit layout::Edit
++#define ErrorBox layout::ErrorBox
+ #define FixedImage layout::FixedImage
+ #define FixedInfo layout::FixedInfo
+ #define FixedLine layout::FixedLine
+@@ -66,11 +60,15 @@
+ #define HBox layout::HBox
+ #define HelpButton layout::HelpButton
+ #define IgnoreButton layout::IgnoreButton
++#define InfoBox layout::InfoBox
+ #define ListBox layout::ListBox
++#define MessBox layout::MessBox
++#define MessageBox layout::MessageBox
+ #define MetricField layout::MetricField
  #define MetricFormatter layout::MetricFormatter
  #define MoreButton layout::MoreButton
  #define MultiLineEdit layout::MultiLineEdit
@@ -111,15 +158,29 @@
  #define NoButton layout::NoButton
  #define NumericField layout::NumericField
  #define NumericFormatter layout::NumericFormatter
-@@ -87,6 +81,7 @@
+@@ -78,17 +76,20 @@
+ #define Plugin layout::Plugin
+ #define ProgressBar layout::ProgressBar
+ #define PushButton layout::PushButton
++#define QueryBox layout::QueryBox
+ #define RadioButton layout::RadioButton
+ #define ResetButton layout::ResetButton
+ #define RetryButton layout::RetryButton
+ #define SpinField layout::SpinField
+-#define Table layout::Table
+ #define TabPage layout::TabPage
++#define Table layout::Table
  #define VBox layout::VBox
++#define WarningBox layout::WarningBox
  #define YesButton layout::YesButton
  
-+#define ScExpandedFixedText FixedText
  #define ModalDialog Dialog
  #define ModelessDialog Dialog
++#define ScExpandedFixedText FixedText
  #define SfxModalDialog Dialog
-@@ -99,43 +94,8 @@
+ #define SfxTabPage TabPage
+ 
+@@ -99,43 +100,8 @@
  #define LAYOUT_DIALOG_PARENT\
      VCLXWindow::GetImplementation( uno::Reference <awt::XWindow> ( GetPeer(), uno::UNO_QUERY ) )->GetWindow()
  
@@ -166,7 +227,7 @@
  
  #endif /* _LAYOUT_PRE_HXX */
 diff --git a/toolkit/inc/layout/layout.hxx b/toolkit/inc/layout/layout.hxx
-index ff223e7..03ee55a 100644
+index ff223e7..b1d9d55 100644
 --- toolkit/inc/layout/layout.hxx
 +++ toolkit/inc/layout/layout.hxx
 @@ -46,6 +46,7 @@
@@ -194,7 +255,22 @@
  
  namespace com { namespace sun { namespace star { namespace awt { class XWindow; } } } }
  
-@@ -92,6 +96,9 @@ public:
+@@ -74,7 +78,7 @@ class TOOLKIT_DLLPUBLIC Context
+ public:
+     Context( char const* pPath );
+     virtual ~Context();
+-    PeerHandle GetPeerHandle( char const* pId, sal_uInt32 nId = 0 ) const;
++    PeerHandle GetPeerHandle( char const* id, sal_uInt32 nId = 0 ) const;
+     void setToplevel( PeerHandle xToplevel );
+     PeerHandle getToplevel();
+     PeerHandle getRoot();
+@@ -87,11 +91,14 @@ public:
+             par( pImpl ) {} \
+         char const* GetUnoName() const; \
+     public: \
+-        t( Context *pCtx, char const* pId, sal_uInt32 nId = 0 ); \
++        t( Context *pCtx, char const* id, sal_uInt32 nId = 0 ); \
+         t( Window *pParent, WinBits nStyle = defaultWinBit )
  #define DECL_GET_IMPL(t) \
          inline t##Impl &getImpl() const
  
@@ -242,8 +318,8 @@
 +    String GetText() const;
 +    void SetStyle( WinBits style );
 +    void SetUpdateMode( bool mode );
-+    void SetHelpId( ULONG id );
-+    ULONG GetHelpId() const;
++    void SetHelpId( sal_uIntPtr id );
++    sal_uIntPtr GetHelpId() const;
 +    void SetSmartHelpId( SmartId const&, SmartIdUpdateMode mode=SMART_SET_SMART );
 +    SmartId GetSmartHelpId() const;
  };
@@ -293,6 +369,24 @@
  
      void Toggle();
      void SetToggleHdl( Link const& rLink );
+@@ -350,7 +366,7 @@ class TOOLKIT_DLLPUBLIC NumericField : public SpinField, public NumericFormatter
+ {
+     DECL_GET_IMPL( NumericField );
+ public:
+-    NumericField( Context *pCtx, char const* pId, sal_uInt32 nId = 0 );
++    NumericField( Context *pCtx, char const* id, sal_uInt32 nId = 0 );
+     NumericField( Window *pParent, WinBits nStyle );
+ };
+ 
+@@ -377,7 +393,7 @@ class TOOLKIT_DLLPUBLIC MetricField : public SpinField, public MetricFormatter
+ {
+     DECL_GET_IMPL( MetricField );
+ public:
+-    MetricField( Context *pCtx, char const* pId, sal_uInt32 nId = 0 );
++    MetricField( Context *pCtx, char const* id, sal_uInt32 nId = 0 );
+     MetricField( Window *pParent, WinBits nStyle );
+ };
+ 
 @@ -421,8 +437,8 @@ public:
      XubString GetEntry( USHORT nPos ) const;
      USHORT GetEntryCount() const;
@@ -304,7 +398,7 @@
  
      USHORT GetSelectEntryCount() const;
      XubString GetSelectEntry( USHORT nSelIndex = 0 ) const;
-@@ -445,6 +461,14 @@ public:
+@@ -445,20 +461,81 @@ public:
      bool IsLanguageSelected( const LanguageType/*eLangType*/) const { return true; }
  };
  
@@ -319,18 +413,86 @@
  class DialogImpl;
  class TOOLKIT_DLLPUBLIC Dialog : public Context, public Window
  {
-@@ -457,8 +481,6 @@ public:
+     DECL_GET_IMPL( Dialog );
+ public:
+-    Dialog( Window *pOptParent, char const* pXMLPath, char const* pId, sal_uInt32 nId = 0 );
+-    Dialog( ::Window *pOptParent, char const* pXMLPath, char const* pId, sal_uInt32 nId = 0 );
++    Dialog( Window *parent, char const* xml_file, char const* id, sal_uInt32 nId = 0 );
++    Dialog( ::Window *parent, char const* xml_file, char const* id, sal_uInt32 nId = 0 );
+     short Execute();
+     void EndDialog( long nResult = 0 );
      void SetText( String const& rStr );
- };
+-};
++    void SetTitle (String const& rStr );
++};
++
++#define DECL_MESSAGE_BOX_CTORS(Name)\
++    public:\
++    Name##Box (::Window *parent, char const* message,\
++                char const* yes=0, char const* no=0, sal_uIntPtr help_id=0,\
++                char const* xml_file="message-box.xml", char const* id="message-box");\
++    Name##Box (::Window *parent, rtl::OUString const& message,\
++                rtl::OUString yes=rtl::OUString::createFromAscii (""),\
++                rtl::OUString no=rtl::OUString::createFromAscii (""),\
++                sal_uIntPtr help_id=0,\
++                char const* xml_file="message-box.xml", char const* id="message-box");\
++    Name##Box (::Window *parent, WinBits, char const* message,\
++                char const* yes=0, char const* no=0, sal_uIntPtr help_id=0,\
++                char const* xml_file="message-box.xml", char const* id="message-box");\
++    Name##Box (::Window *parent, WinBits, rtl::OUString const& message,\
++                rtl::OUString yes=rtl::OUString::createFromAscii (""),\
++                rtl::OUString no=rtl::OUString::createFromAscii (""),\
++                sal_uIntPtr help_id=0,\
++                char const* xml_file="message-box.xml", char const* id="message-box")\
++
++class TOOLKIT_DLLPUBLIC MessageBox : public Dialog
++{
++    DECL_MESSAGE_BOX_CTORS(Message);
++
++protected:
++    FixedImage imageError;
++    FixedImage imageInfo;
++    FixedImage imageQuery;
++    FixedImage imageWarning;
++    FixedText messageText;
++    CancelButton cancelButton;
++    HelpButton helpButton;
++    NoButton noButton;
++    YesButton yesButton;
++
++    void init (rtl::OUString const& message,
++               rtl::OUString const& yes, rtl::OUString const& no, sal_uIntPtr help_id);
++    void init (char const* message, char const* yes, char const* no, sal_uIntPtr help_id);
++};
++
++#define CLASS_MESSAGE_BOX(Name)\
++    class TOOLKIT_DLLPUBLIC Name##Box : public MessageBox\
++    {\
++        DECL_MESSAGE_BOX_CTORS (Name);\
++    }
++
++//CLASS_MESSAGE_BOX (Mess);
++typedef MessageBox MessBox;
++CLASS_MESSAGE_BOX (Error);
++CLASS_MESSAGE_BOX (Info);
++CLASS_MESSAGE_BOX (Query);
++CLASS_MESSAGE_BOX (Warning);
++
++#undef CLASS_MESSAGE_BOX
  
 -#define DECL_GET_WINDOW( cls ) ::cls* Get##cls()
 -#define IMPL_GET_WINDOW( cls ) ::cls* cls::Get##cls() { return reinterpret_cast< ::cls*>( GetWindow() ); }
  class TabPageImpl;
  class TOOLKIT_DLLPUBLIC TabPage : public Context, public Window
  {
-@@ -469,8 +491,7 @@ public:
-     TabPage( Window *pOptParent, char const* pXMLPath, char const* pId, sal_uInt32 nId = 0, SfxItemSet const* set = 0 );
-     TabPage( ::Window *pOptParent, char const* pXMLPath, char const* pId, sal_uInt32 nId = 0, SfxItemSet const* set = 0 );
+@@ -466,11 +543,10 @@ class TOOLKIT_DLLPUBLIC TabPage : public Context, public Window
+ public:
+     static ::Window* global_parent;
+     
+-    TabPage( Window *pOptParent, char const* pXMLPath, char const* pId, sal_uInt32 nId = 0, SfxItemSet const* set = 0 );
+-    TabPage( ::Window *pOptParent, char const* pXMLPath, char const* pId, sal_uInt32 nId = 0, SfxItemSet const* set = 0 );
++    TabPage( Window *parent, char const* xml_file, char const* id, sal_uInt32 nId = 0, SfxItemSet const* set = 0 );
++    TabPage( ::Window *parent, char const* xml_file, char const* id, sal_uInt32 nId = 0, SfxItemSet const* set = 0 );
      ~TabPage();
 -    //DECL_GET_WINDOW( TabPage );
 -    ::TabPage* GetTabPage();
@@ -338,6 +500,89 @@
      virtual void ActivatePage();
      virtual void DeactivatePage();
  #if 0
+@@ -480,8 +556,8 @@ public:
+ class TOOLKIT_DLLPUBLIC SfxTabPage : public TabPage
+ {
+ public:
+-    SfxTabPage( Window *pOptParent, char const* pXMLPath, char const* pId, sal_uInt32 nId = 0, SfxItemSet const* set = 0 );
+-    SfxTabPage( ::Window *pOptParent, char const* pXMLPath, char const* pId, sal_uInt32 nId = 0, SfxItemSet const* set = 0 );
++    SfxTabPage( Window *parent, char const* xml_file, char const* id, sal_uInt32 nId = 0, SfxItemSet const* set = 0 );
++    SfxTabPage( ::Window *parent, char const* xml_file, char const* id, sal_uInt32 nId = 0, SfxItemSet const* set = 0 );
+ #endif
+     // SfxTabPage...
+     enum PageAction { KEEP_PAGE, LEAVE_PAGE, REFRESH_SET };
+@@ -520,7 +596,7 @@ protected:
+     css::uno::Reference< css::awt::XLayoutContainer > mxContainer;
+     Container( rtl::OUString const& rName, sal_Int32 nBorder );
+ public:
+-    Container( Context const* pCtx, char const* pId );
++    Container( Context const* pCtx, char const* id );
+ 
+     void Add( Window *pWindow );
+     void Add( Container *pContainer );
+@@ -544,7 +620,7 @@ class TOOLKIT_DLLPUBLIC Table : public Container
+ protected:
+     Table( sal_Int32 nBorder, sal_Int32 nColumns );
+ public:
+-    Table( Context const* pCtx, char const* pId );
++    Table( Context const* pCtx, char const* id );
+     void Add( Window *pWindow, bool bXExpand, bool bYExpand,
+               sal_Int32 nXSpan = 1, sal_Int32 nYSpan = 1 );
+     void Add( Container *pContainer, bool bXExpand, bool bYExpand,
+@@ -560,7 +636,7 @@ class TOOLKIT_DLLPUBLIC Box : public Container
+ protected:
+     Box( rtl::OUString const& rName, sal_Int32 nBorder, bool bHomogeneous );
+ public:
+-    Box( Context const* pCtx, char const* pId );
++    Box( Context const* pCtx, char const* id );
+     void Add( Window *pWindow, bool bExpand, bool bFill, sal_Int32 nPadding);
+     void Add( Container *pContainer, bool bExpand, bool bFill, sal_Int32 nPadding);
+ 
+@@ -572,13 +648,13 @@ private:
+ class TOOLKIT_DLLPUBLIC HBox : public Box
+ {
+ public:
+-    HBox( Context const* pCtx, char const* pId );
++    HBox( Context const* pCtx, char const* id );
+     HBox( sal_Int32 nBorder, bool bHomogeneous );
+ };
+ class TOOLKIT_DLLPUBLIC VBox : public Box
+ {
+ public:
+-    VBox( Context const* pCtx, char const* pId );
++    VBox( Context const* pCtx, char const* id );
+     VBox( sal_Int32 nBorder, bool bHomogeneous );
+ };
+ 
+@@ -589,7 +665,7 @@ class TOOLKIT_DLLPUBLIC Plugin : public Control
+     //DECL_CONSTRUCTORS( Plugin, Control, 0 );
+ public:
+     ::Control *mpPlugin;
+-    Plugin( Context *pCtx, char const* pId, ::Control *plugin );
++    Plugin( Context *pCtx, char const* id, ::Control *plugin );
+ };
+ 
+ class LocalizedStringImpl;
+@@ -597,7 +673,7 @@ class TOOLKIT_DLLPUBLIC LocalizedString : public Window
+ {
+     DECL_GET_IMPL( LocalizedString );
+ public:
+-    LocalizedString( Context *pCtx, char const* pId );
++    LocalizedString( Context *pCtx, char const* id );
+ 
+     String operator =( String const& );
+     operator String();
+@@ -606,4 +682,10 @@ public:
+ 
+ } // end namespace layout
+ 
++#if ENABLE_LAYOUT
++#define LAYOUT_NS layout::
++#else /* !ENABLE_LAYOUT */
++#define LAYOUT_NS
++#endif
++
+ #endif /* _LAYOUT_HXX */
 diff --git a/toolkit/inc/toolkit/awt/vclxwindows.hxx b/toolkit/inc/toolkit/awt/vclxwindows.hxx
 index 4c250ba..41176fc 100644
 --- toolkit/inc/toolkit/awt/vclxwindows.hxx
@@ -351,6 +596,28 @@
  };
  
  //	----------------------------------------------------
+diff --git a/toolkit/prj/build.lst b/toolkit/prj/build.lst
+index 8b7ac22..09d8126 100644
+--- toolkit/prj/build.lst
++++ toolkit/prj/build.lst
+@@ -2,6 +2,7 @@ ti	toolkit	:	vcl NULL
+ ti	toolkit									usr1	-	all	ti_mkout NULL
+ ti	toolkit\prj								get		-	all	ti_prj NULL
+ ti	toolkit\inc								nmake	-	all	ti_inc NULL
++ti	toolkit\uiconfig\layout									nmake	-	all	ti_layout NULL
+ ti	toolkit\source\helper					nmake	-	all	ti_helper  ti_inc NULL
+ ti	toolkit\source\awt						nmake	-	all	ti_awt  ti_inc NULL
+ ti	toolkit\source\controls					nmake	-	all	ti_controls  ti_inc NULL
+diff --git a/toolkit/prj/d.lst b/toolkit/prj/d.lst
+index 88ee9c8..743e2d6 100644
+--- toolkit/prj/d.lst
++++ toolkit/prj/d.lst
+@@ -52,3 +52,5 @@ mkdir: %_DEST%\inc%_EXT%\layout
+ ..\%__SRC%\lib\*.dylib %_DEST%\lib%_EXT%\*.dylib
+ 
+ ..\inc\layout\*.hxx %_DEST%\inc%_EXT%\layout\*.hxx
++
++..\%__SRC%\bin\*-layout.zip %_DEST%\pck%_EXT%\*.*
 diff --git a/toolkit/source/awt/vclxdialog.cxx b/toolkit/source/awt/vclxdialog.cxx
 index f54996b..f72500c 100644
 --- toolkit/source/awt/vclxdialog.cxx
@@ -1058,9 +1325,26 @@
 +
  } // namespace layout
 diff --git a/toolkit/source/vclcompat/wrapper.cxx b/toolkit/source/vclcompat/wrapper.cxx
-index 95bc106..c765f5e 100644
+index 95bc106..8c5e9d4 100644
 --- toolkit/source/vclcompat/wrapper.cxx
 +++ toolkit/source/vclcompat/wrapper.cxx
+@@ -138,13 +138,13 @@ PeerHandle Context::getRoot()
+      return pImpl->getRoot();
+ }
+ 
+-PeerHandle Context::GetPeerHandle( const char *pId, sal_uInt32 nId ) const
++PeerHandle Context::GetPeerHandle( const char *id, sal_uInt32 nId ) const
+ {
+     PeerHandle xHandle;
+-    xHandle = pImpl->getByName( OUString( pId, strlen( pId ), RTL_TEXTENCODING_UTF8 ) );
++    xHandle = pImpl->getByName( OUString( id, strlen( id ), RTL_TEXTENCODING_UTF8 ) );
+     if ( !xHandle.is() )
+     {
+-        DBG_ERROR1( "Failed to fetch widget '%s'", pId );
++        DBG_ERROR1( "Failed to fetch widget '%s'", id );
+     }
+ 
+     if ( nId != 0 )
 @@ -188,33 +188,53 @@ Context *Window::getContext()
      return this && mpImpl ? mpImpl->mpCtx : NULL;
  }
@@ -1097,12 +1381,12 @@
      return GetWindow()->GetParent();
  }
  
-+void Window::SetHelpId( ULONG id )
++void Window::SetHelpId( sal_uIntPtr id )
 +{
 +    GetWindow()->SetHelpId( id );
 +}
 +
-+ULONG Window::GetHelpId() const
++sal_uIntPtr Window::GetHelpId() const
 +{
 +    return GetWindow()->GetHelpId();
 +}
@@ -1161,6 +1445,226 @@
  class DialogImpl : public WindowImpl
  {
  public:
+@@ -391,17 +436,17 @@ public:
+ 
+ IMPL_GET_IMPL( Dialog )
+ 
+-Dialog::Dialog( Window *pParent, const char *pXMLPath, const char *pId, sal_uInt32 nId )
+-    : Context( pXMLPath )
+-    , Window( new DialogImpl( this, Context::GetPeerHandle( pId, nId ), this ) )
++Dialog::Dialog( Window *pParent, const char *xml_file, const char *id, sal_uInt32 nId )
++    : Context( xml_file )
++    , Window( new DialogImpl( this, Context::GetPeerHandle( id, nId ), this ) )
+ {
+     if ( pParent )
+         SetParent( pParent );
+ }
+ 
+-Dialog::Dialog( ::Window *pParent, const char *pXMLPath, const char *pId, sal_uInt32 nId )
+-    : Context( pXMLPath )
+-    , Window( new DialogImpl( this, Context::GetPeerHandle( pId, nId ), this ) )
++Dialog::Dialog( ::Window *pParent, const char *xml_file, const char *id, sal_uInt32 nId )
++    : Context( xml_file )
++    , Window( new DialogImpl( this, Context::GetPeerHandle( id, nId ), this ) )
+ {
+     if ( pParent )
+         SetParent( pParent );
+@@ -423,11 +468,116 @@ void Dialog::EndDialog( long nResult )
+ 
+ void Dialog::SetText( String const& rStr )
+ {
++    SetTitle (rStr);
++}
++
++void Dialog::SetTitle( String const& rStr )
++{
+     if ( !getImpl().mxDialog.is() )
+         return;
+     getImpl().mxDialog->setTitle( rStr );
+ }
+ 
++#define MESSAGE_BOX_IMPL\
++    : Dialog (parent, xml_file, id)\
++        , imageError (this, "FI_ERROR")\
++        , imageInfo (this, "FI_INFO")\
++        , imageQuery (this, "FI_QUERY")\
++        , imageWarning (this, "FI_WARNING")\
++        , messageText (this, "FT_MESSAGE")\
++        , cancelButton (this, "BTN_CANCEL")\
++        , helpButton (this, "BTN_HELP")\
++        , noButton (this, "BTN_NO")\
++        , yesButton (this, "BTN_YES")\
++{\
++    init (message, yes, no, help_id);\
++}\
++
++MessageBox::MessageBox (::Window *parent, char const* message,
++                    char const* yes, char const* no, sal_uIntPtr help_id,
++                    char const* xml_file, char const* id)
++MESSAGE_BOX_IMPL
++
++MessageBox::MessageBox (::Window *parent, OUString const& message,
++                    OUString yes, OUString no, sal_uIntPtr help_id,
++                    char const* xml_file, char const* id)
++MESSAGE_BOX_IMPL
++
++MessageBox::MessageBox (::Window *parent, WinBits, char const* message,
++                    char const* yes, char const* no, sal_uIntPtr help_id,
++                    char const* xml_file, char const* id)
++MESSAGE_BOX_IMPL
++
++MessageBox::MessageBox (::Window *parent, WinBits, OUString const& message,
++                    OUString yes, OUString no, sal_uIntPtr help_id,
++                    char const* xml_file, char const* id)
++MESSAGE_BOX_IMPL
++
++void MessageBox::init (char const* message, char const* yes, char const* no, sal_uIntPtr help_id)
++{
++    init (OUString::createFromAscii (message), OUString::createFromAscii (yes), OUString::createFromAscii (no), help_id);
++}
++
++void MessageBox::init (OUString const& message, OUString const& yes, OUString const& no, sal_uIntPtr help_id)
++{
++    imageError.Hide ();
++    imageInfo.Hide ();
++    imageQuery.Hide ();
++    imageWarning.Hide ();
++    if (message.getLength ())
++        messageText.SetText (message);
++    if (yes.getLength ())
++    {
++        yesButton.SetText (yes);
++        SetTitle (yes);
++        if (no.getLength ())
++            noButton.SetText (no);
++        else
++            noButton.Hide ();
++    }
++    if (help_id)
++        SetHelpId (help_id);
++    else
++        helpButton.Hide ();
++}
++
++#undef MESSAGE_BOX_IMPL
++#define MESSAGE_BOX_IMPL(Name)\
++    Name##Box::Name##Box (::Window *parent, char const* message,\
++                          char const* yes, char const* no, sal_uIntPtr help_id,\
++                          char const* xml_file, char const* id)\
++    : MessageBox (parent, message, yes, no, help_id, xml_file, id)\
++    {\
++        image##Name.Show ();\
++    }\
++    Name##Box::Name##Box (::Window *parent, OUString const& message,\
++                    OUString yes, OUString no, sal_uIntPtr help_id,\
++                          char const* xml_file, char const* id)\
++    : MessageBox (parent, message, yes, no, help_id, xml_file, id)\
++    {\
++        image##Name.Show ();\
++    }\
++    Name##Box::Name##Box (::Window *parent, WinBits bits, char const* message,\
++                          char const* yes, char const* no, sal_uIntPtr help_id,\
++                          char const* xml_file, char const* id)\
++    : MessageBox (parent, bits, message, yes, no, help_id, xml_file, id)\
++    {\
++        image##Name.Show ();\
++    }\
++    Name##Box::Name##Box (::Window *parent, WinBits bits, OUString const& message,\
++                          OUString yes, OUString no, sal_uIntPtr help_id,\
++                          char const* xml_file, char const* id)\
++    : MessageBox (parent, bits, message, yes, no, help_id, xml_file, id)\
++    {\
++        image##Name.Show ();\
++    }
++
++MESSAGE_BOX_IMPL (Error);
++MESSAGE_BOX_IMPL (Info);
++MESSAGE_BOX_IMPL (Query);
++MESSAGE_BOX_IMPL (Warning);
++
++
+ class TabPageImpl : public WindowImpl
+ {
+ public:
+@@ -443,9 +593,9 @@ public:
+ 
+ IMPL_GET_IMPL( TabPage )
+ 
+-TabPage::TabPage( Window *pParent, const char *pXMLPath, const char *pId, sal_uInt32 nId, SfxItemSet const* set )
+-    : Context( pXMLPath )
+-    , Window( new TabPageImpl( this, Context::GetPeerHandle( pId, nId ), this ) )
++TabPage::TabPage( Window *pParent, const char *xml_file, const char *id, sal_uInt32 nId, SfxItemSet const* set )
++    : Context( xml_file )
++    , Window( new TabPageImpl( this, Context::GetPeerHandle( id, nId ), this ) )
+     , bHasExchangeSupport( false )
+     , pSet( set )
+ {
+@@ -453,9 +603,9 @@ TabPage::TabPage( Window *pParent, const char *pXMLPath, const char *pId, sal_uI
+         SetParent( pParent );
+ }
+ 
+-TabPage::TabPage( ::Window *pParent, const char *pXMLPath, const char *pId, sal_uInt32 nId, SfxItemSet const* set )
+-    : Context( pXMLPath )
+-    , Window( new TabPageImpl( this, Context::GetPeerHandle( pId, nId ), this ) )
++TabPage::TabPage( ::Window *pParent, const char *xml_file, const char *id, sal_uInt32 nId, SfxItemSet const* set )
++    : Context( xml_file )
++    , Window( new TabPageImpl( this, Context::GetPeerHandle( id, nId ), this ) )
+     , bHasExchangeSupport( false )
+     , pSet( set )
+ {
+@@ -479,15 +629,15 @@ void TabPage::DeactivatePage()
+ }
+ 
+ #if 0
+-SfxTabPage::SfxTabPage( Window *pParent, const char *pXMLPath, const char *pId, sal_uInt32 nId, SfxItemSet const* set )
+-    : TabPage( pParent, pXMLPath, pId, nId )
++SfxTabPage::SfxTabPage( Window *pParent, const char *xml_file, const char *id, sal_uInt32 nId, SfxItemSet const* set )
++    : TabPage( pParent, xml_file, id, nId )
+     , bHasExchangeSupport( false )
+     , pSet( set )
+ {
+ }
+ 
+-SfxTabPage::SfxTabPage( ::Window *pParent, const char *pXMLPath, const char *pId, sal_uInt32 nId, SfxItemSet const* set )
+-    : TabPage( pParent, pXMLPath, pId, nId )
++SfxTabPage::SfxTabPage( ::Window *pParent, const char *xml_file, const char *id, sal_uInt32 nId, SfxItemSet const* set )
++    : TabPage( pParent, xml_file, id, nId )
+ {
+ }
+ 
+@@ -644,8 +794,8 @@ FixedImage::~FixedImage()
+     
+ IMPL_CONSTRUCTORS( ProgressBar, Control, "ProgressBar" );
+ #if 0
+-ProgressBar::ProgressBar( Context *pCtx, const char *pId, sal_uInt32 nId )
+-    : Control( new ProgressBarImpl( pCtx, pCtx->GetPeerHandle( pId, nId ), this ) )
++ProgressBar::ProgressBar( Context *pCtx, const char *id, sal_uInt32 nId )
++    : Control( new ProgressBarImpl( pCtx, pCtx->GetPeerHandle( id, nId ), this ) )
+ {
+ }
+ ProgressBar::ProgressBar( Window *pParent, WinBits nBits)
+@@ -716,8 +866,8 @@ public:
+     }
+ };
+ 
+-Plugin::Plugin( Context *pCtx, char const *pId, ::Control *plugin )
+-    : Control( new PluginImpl( pCtx, pCtx->GetPeerHandle( pId, 0 ), this, plugin ) )
++Plugin::Plugin( Context *pCtx, char const *id, ::Control *plugin )
++    : Control( new PluginImpl( pCtx, pCtx->GetPeerHandle( id, 0 ), this, plugin ) )
+     , mpPlugin( plugin )
+ {
+ }
+@@ -748,8 +898,8 @@ public:
+ 
+ IMPL_GET_IMPL( LocalizedString );
+ 
+-LocalizedString::LocalizedString( Context *pCtx, char const* pId )
+-    : Window( new LocalizedStringImpl( pCtx, pCtx->GetPeerHandle( pId, 0 ), this ) )
++LocalizedString::LocalizedString( Context *pCtx, char const* id )
++    : Window( new LocalizedStringImpl( pCtx, pCtx->GetPeerHandle( id, 0 ), this ) )
+ {
+ }
+ 
 diff --git a/toolkit/source/vclcompat/wrapper.hxx b/toolkit/source/vclcompat/wrapper.hxx
 index 5df64bc..e5332de 100644
 --- toolkit/source/vclcompat/wrapper.hxx
@@ -1185,6 +1689,120 @@
  #define IMPL_CONSTRUCTORS_2(t,win_par,other_par,unoName) \
      t::t( Context *pCtx, const char *pId, sal_uInt32 nId ) \
          : win_par( new t##Impl( pCtx, pCtx->GetPeerHandle( pId, nId ), this ) ) \
+diff --git a/toolkit/uiconfig/layout/delzip b/toolkit/uiconfig/layout/delzip
+new file mode 100644
+index 0000000..7b4d68d
+--- /dev/null
++++ toolkit/uiconfig/layout/delzip
+@@ -0,0 +1 @@
++empty
+\ No newline at end of file
+diff --git a/toolkit/uiconfig/layout/makefile.mk b/toolkit/uiconfig/layout/makefile.mk
+new file mode 100644
+index 0000000..2cc6d95
+--- /dev/null
++++ toolkit/uiconfig/layout/makefile.mk
+@@ -0,0 +1,57 @@
++#*************************************************************************
++#
++#   OpenOffice.org - a multi-platform office productivity suite
++#
++#   $RCSfile$
++#
++#   $Revision$
++#
++#   last change: $Author$ $Date$
++#
++#   The Contents of this file are made available subject to
++#   the terms of GNU Lesser General Public License Version 2.1.
++#
++#
++#     GNU Lesser General Public License Version 2.1
++#     =============================================
++#     Copyright 2005 by Sun Microsystems, Inc.
++#     901 San Antonio Road, Palo Alto, CA 94303, USA
++#
++#     This library is free software; you can redistribute it and/or
++#     modify it under the terms of the GNU Lesser General Public
++#     License version 2.1, as published by the Free Software Foundation.
++#
++#     This library is distributed in the hope that it will be useful,
++#     but WITHOUT ANY WARRANTY; without even the implied warranty of
++#     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++#     Lesser General Public License for more details.
++#
++#     You should have received a copy of the GNU Lesser General Public
++#     License along with this library; if not, write to the Free Software
++#     Foundation, Inc., 51 Franklin Street, 5th Floor, Boston,
++#     MA  02110-1301  USA
++#
++#*************************************************************************
++
++PRJ=../..
++PRJNAME=toolkit
++TARGET=layout
++
++.INCLUDE : settings.mk
++
++.IF "$(ENABLE_LAYOUT)" == "TRUE"
++
++all: ALLTAR
++
++XML_FILES=\
++  message-box.xml\
++
++#
++
++.INCLUDE : layout.mk
++
++.ELSE # ENABLE_LAYOUT != TRUE
++all .PHONY:
++.ENDIF # ENABLE_LAYOUT != TRUE
++
++.INCLUDE :  target.mk
+diff --git a/toolkit/uiconfig/layout/message-box.xml b/toolkit/uiconfig/layout/message-box.xml
+new file mode 100644
+index 0000000..5a2228f
+--- /dev/null
++++ toolkit/uiconfig/layout/message-box.xml
+@@ -0,0 +1,37 @@
++<?xml version="1.0" encoding="UTF-8"?>
++<!-- This is a template.  i18n translation is not performed in-place;
++     i18n translated xml files are generated from this template by
++     transex3/layout/tralay.  !-->
++
++<modaldialog xmlns="http://openoffice.org/2007/layout";
++             xmlns:cnt="http://openoffice.org/2007/layout/container";
++             id="message-box" _title="" optimumsize="true"
++             has_border="true" sizeable="true" moveable="true">
++    <vbox border="5" spacing="5">
++	<hbox border="5" spacing="20">
++	    <align cnt:expand="false" cnt:fill="true">
++		<fixedimage id="FI_ERROR" cnt:expand="false" cnt:v-align="0.5" cnt:v-fill="0" graphic="res/commandimagelist/msgbox-error.png" />
++	    </align>
++	    <align cnt:expand="false" cnt:fill="true">
++		<fixedimage id="FI_INFO" cnt:expand="false" cnt:v-align="0.5" cnt:v-fill="0" graphic="res/commandimagelist/msgbox-info.png" />
++	    </align>
++	    <align cnt:expand="false" cnt:fill="true">
++		<fixedimage id="FI_QUERY" cnt:expand="false" cnt:v-align="0.5" cnt:v-fill="0" graphic="res/commandimagelist/msgbox-query.png" />
++	    </align>
++	    <align cnt:expand="false" cnt:fill="true">
++		<fixedimage id="FI_WARNING" cnt:expand="false" cnt:v-align="0.5" cnt:v-fill="0" graphic="res/commandimagelist/msgbox-warning.png" />
++	    </align>
++	    <align cnt:expand="false" cnt:fill="true">
++		<fixedtext id="FT_MESSAGE" _label="FT-LABEL" cnt:v-align="0.5" cnt:v-fill="0" />
++	    </align>
++	    <flow/>
++	</hbox>
++	<dialogbuttonhbox border="0" spacing="5">
++	    <flow/>
++	    <yesbutton id="BTN_YES"/>
++	    <cancelbutton id="BTN_CANCEL"/>
++	    <helpbutton id="BTN_HELP"/>
++	    <nobutton id="BTN_NO" xlabel="~Alternate"/>
++	</dialogbuttonhbox>
++    </vbox>
++</modaldialog>
 diff --git a/toolkit/util/makefile.pmk b/toolkit/util/makefile.pmk
 index f88a240..acf6ba4 100644
 --- toolkit/util/makefile.pmk
@@ -1198,6 +1816,15 @@
 -CFLAGS+=-DENABLE_LAYOUT=0
 +CFLAGS+=-DTEST_LAYOUT=1
  .ENDIF # ENABLE_LAYOUT == TRUE
+diff --git a/toolkit/workben/layout/TEST b/toolkit/workben/layout/TEST
+new file mode 100755
+index 0000000..d6a20cb
+--- /dev/null
++++ toolkit/workben/layout/TEST
+@@ -0,0 +1,3 @@
++export OOO_INSTALL_PREFIX=$(cd ../../../../.. && pwd)/ooo-svn
++test -d $OOO_INSTALL_PREFIX/openoffice.org3 && export OOO_PREFIX_BRAND=$OOO_INSTALL_PREFIX/openoffice.org3 || export OOO_PREFIX_BRAND=$OOO_INSTALL_PREFIX
++LD_LIBRARY_PATH=$OOO_PREFIX_BRAND/basis-link/program:$OOO_PREFIX_BRAND/basis-link/ure-link/lib ../../unxlngx6.pro/bin/test "$@"
 diff --git a/toolkit/workben/layout/insert-sheet.xml b/toolkit/workben/layout/insert-sheet.xml
 new file mode 100644
 index 0000000..0ce5843
@@ -1262,7 +1889,7 @@
 +    </vbox>
 +</modaldialog>
 diff --git a/toolkit/workben/layout/makefile.mk b/toolkit/workben/layout/makefile.mk
-index 2b2609c..3afebd5 100644
+index 2b2609c..4664078 100644
 --- toolkit/workben/layout/makefile.mk
 +++ toolkit/workben/layout/makefile.mk
 @@ -47,12 +47,10 @@ ENABLE_EXCEPTIONS=TRUE
@@ -1279,15 +1906,23 @@
  .IF "$(COMNAME)" == "gcc3"
  CFLAGS+=-Wall -Wno-non-virtual-dtor
  .ENDIF
-@@ -96,6 +94,7 @@ default: ALLTAR
+@@ -96,8 +94,11 @@ default: ALLTAR
  .INCLUDE : target.mk
  
  XML_FILES=\
 +	insert-sheet.xml\
++	message-box.xml\
  	recover.xml\
  	sort-options.xml\
++	string-input.xml\
  	wordcount.xml\
-@@ -126,9 +125,11 @@ dist .PHONY :
+ 	zoom.xml\
+ 
+@@ -123,12 +124,15 @@ $(svtools):
+ 	ln -sf ..$/$(PRJ)$/svtools$/inc $(INCCOM)$/svtools
+ 
+ dist .PHONY :
++	cp -pv message-box.xml $(PRJ)/uiconfig/layout
  	$(SHELL) ./un-test.sh zoom.cxx > ../$(PRJ)/svx/source/dialog/zoom.cxx
  	$(SHELL) ./un-test.sh zoom.hxx > ../$(PRJ)/svx/source/dialog/zoom.hxx
  	touch ../$(PRJ)/svx/source/dialog/dlgfact.cxx
@@ -1299,15 +1934,59 @@
  	# FIXME: broken setup
  	ln -sf ../inc/wordcountdialog.hxx ../$(PRJ)/sw/source/ui/dialog/wordcountdialog.hxx 
  	$(SHELL) ./un-test.sh tpsort.cxx > ../$(PRJ)/sc/source/ui/dbgui/tpsort.cxx
-@@ -137,6 +138,8 @@ dist .PHONY :
+@@ -137,6 +141,9 @@ dist .PHONY :
  	$(SHELL) ./un-test.sh sortdlg.hxx > ../$(PRJ)/sc/source/ui/inc/sortdlg.hxx
  	touch ../$(PRJ)/sc/source/ui/attrdlg/scdlgfact.cxx
  	touch ../$(PRJ)/sc/source/ui/view/cellsh2.cxx
-+	cp -pv sort-options.xml ../$(PRJ)/sc/uiconfig/layout
 +	cp -pv insert-sheet.xml ../$(PRJ)/sc/uiconfig/layout
++	cp -pv sort-options.xml ../$(PRJ)/sc/uiconfig/layout
++	cp -pv string-input.xml ../$(PRJ)/sc/uiconfig/layout
  
  .ELSE # ENABLE_LAYOUT != TRUE
  all .PHONY:
+diff --git a/toolkit/workben/layout/message-box.xml b/toolkit/workben/layout/message-box.xml
+new file mode 100644
+index 0000000..5a2228f
+--- /dev/null
++++ toolkit/workben/layout/message-box.xml
+@@ -0,0 +1,37 @@
++<?xml version="1.0" encoding="UTF-8"?>
++<!-- This is a template.  i18n translation is not performed in-place;
++     i18n translated xml files are generated from this template by
++     transex3/layout/tralay.  !-->
++
++<modaldialog xmlns="http://openoffice.org/2007/layout";
++             xmlns:cnt="http://openoffice.org/2007/layout/container";
++             id="message-box" _title="" optimumsize="true"
++             has_border="true" sizeable="true" moveable="true">
++    <vbox border="5" spacing="5">
++	<hbox border="5" spacing="20">
++	    <align cnt:expand="false" cnt:fill="true">
++		<fixedimage id="FI_ERROR" cnt:expand="false" cnt:v-align="0.5" cnt:v-fill="0" graphic="res/commandimagelist/msgbox-error.png" />
++	    </align>
++	    <align cnt:expand="false" cnt:fill="true">
++		<fixedimage id="FI_INFO" cnt:expand="false" cnt:v-align="0.5" cnt:v-fill="0" graphic="res/commandimagelist/msgbox-info.png" />
++	    </align>
++	    <align cnt:expand="false" cnt:fill="true">
++		<fixedimage id="FI_QUERY" cnt:expand="false" cnt:v-align="0.5" cnt:v-fill="0" graphic="res/commandimagelist/msgbox-query.png" />
++	    </align>
++	    <align cnt:expand="false" cnt:fill="true">
++		<fixedimage id="FI_WARNING" cnt:expand="false" cnt:v-align="0.5" cnt:v-fill="0" graphic="res/commandimagelist/msgbox-warning.png" />
++	    </align>
++	    <align cnt:expand="false" cnt:fill="true">
++		<fixedtext id="FT_MESSAGE" _label="FT-LABEL" cnt:v-align="0.5" cnt:v-fill="0" />
++	    </align>
++	    <flow/>
++	</hbox>
++	<dialogbuttonhbox border="0" spacing="5">
++	    <flow/>
++	    <yesbutton id="BTN_YES"/>
++	    <cancelbutton id="BTN_CANCEL"/>
++	    <helpbutton id="BTN_HELP"/>
++	    <nobutton id="BTN_NO" xlabel="~Alternate"/>
++	</dialogbuttonhbox>
++    </vbox>
++</modaldialog>
 diff --git a/toolkit/workben/layout/recover.cxx b/toolkit/workben/layout/recover.cxx
 index 76eec92..45cf261 100644
 --- toolkit/workben/layout/recover.cxx
@@ -1326,6 +2005,72 @@
  #if TEST_LAYOUT
  SvxRecoverDialog::SvxRecoverDialog( Window* pParent )
  #else /* !TEST_LAYOUT */
+diff --git a/toolkit/workben/layout/string-input.xml b/toolkit/workben/layout/string-input.xml
+new file mode 100644
+index 0000000..0a59899
+--- /dev/null
++++ toolkit/workben/layout/string-input.xml
+@@ -0,0 +1,16 @@
++<?xml version="1.0" encoding="UTF-8"?>
++<!-- This is a template.  i18n translation is not performed in-place;
++     i18n translated XML files are generated from this template by
++     transex3/layout/tralay.  !-->
++
++<modaldialog sizeable="true" closeable="false" moveable="true" output-size="true" id="RID_SCDLG_STRINPUT" sv-look="true" xmlns="http://openoffice.org/2007/layout"; xmlns:cnt="http://openoffice.org/2007/layout/container"; title="Insert String">
++    <vbox spacing="5" border="5">
++        <fixedtext id="FT_LABEL" label="FT-LABEL"/>
++        <edit has_border="true" id="ED_INPUT" tabstop="true"/>
++	<dialogbuttonhbox border="5" spacing="5">
++            <okbutton default="true" id="BTN_OK" tabstop="true"/>
++            <cancelbutton id="BTN_CANCEL" tabstop="true"/>
++            <helpbutton id="BTN_HELP" tabstop="true"/>
++	</dialogbuttonhbox>
++    </vbox>
++</modaldialog>
+diff --git a/toolkit/workben/layout/test.cxx b/toolkit/workben/layout/test.cxx
+index f825417..ed5a67e 100644
+--- toolkit/workben/layout/test.cxx
++++ toolkit/workben/layout/test.cxx
+@@ -241,19 +241,21 @@ void LayoutTest::RunEditor()
+     editor.Execute();
+ }
+ 
+-void RunDialog( Dialog& dialog )
++short RunDialog( Dialog& dialog )
+ {
+     dialog.Show();
+-    dialog.Execute();
+-    fprintf( stderr, "Done: dialog execute exited\n" );
++    short result = dialog.Execute();
++    fprintf( stderr, "Done: dialog execute exited:%d\n", result);
++    return result;
+ }
+ 
+ #undef Dialog
+-void RunDialog( ::Dialog& dialog )
++short RunDialog( ::Dialog& dialog )
+ {
+     dialog.Show();
+-    dialog.Execute();
+-    fprintf( stderr, "Done: dialog execute exited\n" );
++    short result = dialog.Execute();
++    fprintf( stderr, "Done: dialog execute exited:%d\n", result);
++    return result;
+ }
+ 
+ #if SORT_DLG
+@@ -274,6 +276,11 @@ void TestDialog( OUString const& name )
+         PluginDialog plugin ( 0 );
+         RunDialog( plugin );
+     }
++    else if ( name.equalsAscii( "query" ) )
++    {
++        QueryBox query ( 0, "Do you want to do?", "do");
++        RunDialog( query );
++    }
+     else if ( name.equalsAscii( "recover" ) )
+     {
+         SvxRecoverDialog recover ( 0 );
 diff --git a/toolkit/workben/layout/tpsort.cxx b/toolkit/workben/layout/tpsort.cxx
 index 9468c5d..4d4dfd1 100644
 --- toolkit/workben/layout/tpsort.cxx

Added: trunk/src/layout/default_images/res/commandimagelist/msgbox-error.png
==============================================================================
Binary file. No diff available.

Added: trunk/src/layout/default_images/res/commandimagelist/msgbox-info.png
==============================================================================
Binary file. No diff available.

Added: trunk/src/layout/default_images/res/commandimagelist/msgbox-query.png
==============================================================================
Binary file. No diff available.

Added: trunk/src/layout/default_images/res/commandimagelist/msgbox-warning.png
==============================================================================
Binary file. No diff available.

Added: trunk/src/layout/ooo_custom_images/industrial/res/commandimagelist/msgbox-error.png
==============================================================================
Binary file. No diff available.

Added: trunk/src/layout/ooo_custom_images/industrial/res/commandimagelist/msgbox-info.png
==============================================================================
Binary file. No diff available.

Added: trunk/src/layout/ooo_custom_images/industrial/res/commandimagelist/msgbox-query.png
==============================================================================
Binary file. No diff available.

Added: trunk/src/layout/ooo_custom_images/industrial/res/commandimagelist/msgbox-warning.png
==============================================================================
Binary file. No diff available.

Added: trunk/src/layout/ooo_custom_images/tango/res/commandimagelist/msgbox-error.png
==============================================================================
Binary file. No diff available.

Added: trunk/src/layout/ooo_custom_images/tango/res/commandimagelist/msgbox-info.png
==============================================================================
Binary file. No diff available.

Added: trunk/src/layout/ooo_custom_images/tango/res/commandimagelist/msgbox-query.png
==============================================================================
Binary file. No diff available.

Added: trunk/src/layout/ooo_custom_images/tango/res/commandimagelist/msgbox-warning.png
==============================================================================
Binary file. No diff available.



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]