summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--common/project.cpp111
-rw-r--r--win/Htmldlg.cpp12
-rw-r--r--win/Htmldlg.h1
-rw-r--r--win/Imagedlg.cpp24
-rw-r--r--win/Leocad.clw19
5 files changed, 87 insertions, 80 deletions
diff --git a/common/project.cpp b/common/project.cpp
index a9db3fa..a96ddb2 100644
--- a/common/project.cpp
+++ b/common/project.cpp
@@ -3387,30 +3387,36 @@ void Project::HandleCommand(LC_COMMANDS id, unsigned long nParam)
#endif
} break;
- case LC_FILE_HTML:
- {
- LC_HTMLDLG_OPTS opts;
- strcpy(opts.path, m_strPathName);
- if (strlen(opts.path) > 0)
- {
- char* ptr = strrchr(opts.path, '/');
- if (ptr == NULL)
- ptr = strrchr(opts.path, '\\');
- if (ptr)
- {
- ptr++;
- *ptr = 0;
- }
- }
- unsigned long image = Sys_ProfileLoadInt ("Default", "HTML Options", 1|LC_IMAGE_TRANSPARENT);
+ case LC_FILE_HTML:
+ {
+ LC_HTMLDLG_OPTS opts;
+
+ strcpy (opts.path, Sys_ProfileLoadString ("Default", "HTML Path", ""));
+ if (strlen (opts.path) == 0)
+ {
+ strcpy (opts.path, m_strPathName);
+ if (strlen(opts.path) > 0)
+ {
+ char* ptr = strrchr(opts.path, '/');
+ if (ptr == NULL)
+ ptr = strrchr(opts.path, '\\');
+ if (ptr)
+ {
+ ptr++;
+ *ptr = 0;
+ }
+ }
+ }
+
+ unsigned long image = Sys_ProfileLoadInt ("Default", "HTML Image Options", 1|LC_IMAGE_TRANSPARENT);
opts.imdlg.imopts.background[0] = (unsigned char)(m_fBackground[0]*255);
opts.imdlg.imopts.background[1] = (unsigned char)(m_fBackground[1]*255);
opts.imdlg.imopts.background[2] = (unsigned char)(m_fBackground[2]*255);
opts.imdlg.from = 1;
opts.imdlg.to = 1;
opts.imdlg.multiple = false;
- opts.imdlg.width = Sys_ProfileLoadInt ("Default", "HTML Width", 256);
- opts.imdlg.height = Sys_ProfileLoadInt ("Default", "HTML Height", 160);
+ opts.imdlg.width = Sys_ProfileLoadInt ("Default", "HTML Image Width", 256);
+ opts.imdlg.height = Sys_ProfileLoadInt ("Default", "HTML Image Height", 160);
opts.imdlg.imopts.quality = Sys_ProfileLoadInt ("Default", "JPEG Quality", 70);
opts.imdlg.imopts.interlaced = (image & LC_IMAGE_PROGRESSIVE) != 0;
opts.imdlg.imopts.transparent = (image & LC_IMAGE_TRANSPARENT) != 0;
@@ -3418,49 +3424,65 @@ void Project::HandleCommand(LC_COMMANDS id, unsigned long nParam)
opts.imdlg.imopts.pause = 1;
opts.imdlg.imopts.format = (unsigned char)(image & ~(LC_IMAGE_MASK));
- unsigned long ul = Sys_ProfileLoadInt ("Default", "HTML Options", LC_HTML_SINGLEPAGE);
- opts.singlepage = (ul & LC_HTML_SINGLEPAGE) != 0;
- opts.index = (ul & LC_HTML_INDEX) != 0;
- opts.images = (ul & LC_HTML_IMAGES) != 0;
- opts.listend = (ul & LC_HTML_LISTEND) != 0;
- opts.liststep = (ul & LC_HTML_LISTSTEP) != 0;
- opts.highlight = (ul & LC_HTML_HIGHLIGHT) != 0;
+ unsigned long ul = Sys_ProfileLoadInt ("Default", "HTML Options", LC_HTML_SINGLEPAGE);
+ opts.singlepage = (ul & LC_HTML_SINGLEPAGE) != 0;
+ opts.index = (ul & LC_HTML_INDEX) != 0;
+ opts.images = (ul & LC_HTML_IMAGES) != 0;
+ opts.listend = (ul & LC_HTML_LISTEND) != 0;
+ opts.liststep = (ul & LC_HTML_LISTSTEP) != 0;
+ opts.highlight = (ul & LC_HTML_HIGHLIGHT) != 0;
if (SystemDoDialog(LC_DLG_HTML, &opts))
{
FILE* f;
- char* ext = ".bmp", fn[LC_MAXPATH];
+ char* ext, fn[LC_MAXPATH];
int i;
unsigned short last = GetLastStep();
- ul = 0;
- if (opts.singlepage) ul |= LC_HTML_SINGLEPAGE;
- if (opts.index) ul |= LC_HTML_INDEX;
- if (opts.images) ul |= LC_HTML_IMAGES;
- if (opts.listend) ul |= LC_HTML_LISTEND;
- if (opts.liststep) ul |= LC_HTML_LISTSTEP;
- if (opts.highlight) ul |= LC_HTML_HIGHLIGHT;
- Sys_ProfileSaveInt ("Default", "HTML Options", ul);
+ // Save HTML options
+ ul = 0;
+ if (opts.singlepage) ul |= LC_HTML_SINGLEPAGE;
+ if (opts.index) ul |= LC_HTML_INDEX;
+ if (opts.images) ul |= LC_HTML_IMAGES;
+ if (opts.listend) ul |= LC_HTML_LISTEND;
+ if (opts.liststep) ul |= LC_HTML_LISTSTEP;
+ if (opts.highlight) ul |= LC_HTML_HIGHLIGHT;
+ Sys_ProfileSaveInt ("Default", "HTML Options", ul);
+
+ // Save image options
+ ul = opts.imdlg.imopts.format;
+ if (opts.imdlg.imopts.interlaced)
+ ul |= LC_IMAGE_PROGRESSIVE;
+ if (opts.imdlg.imopts.transparent)
+ ul |= LC_IMAGE_TRANSPARENT;
+ if (opts.imdlg.imopts.truecolor)
+ ul |= LC_IMAGE_HIGHCOLOR;
+ Sys_ProfileSaveInt ("Default", "HTML Image Options", ul);
+ Sys_ProfileSaveInt ("Default", "HTML Image Width", opts.imdlg.width);
+ Sys_ProfileSaveInt ("Default", "HTML Image Height", opts.imdlg.height);
switch (opts.imdlg.imopts.format)
{
case LC_IMAGE_BMP: ext = ".bmp"; break;
+ default:
case LC_IMAGE_GIF: ext = ".gif"; break;
case LC_IMAGE_JPG: ext = ".jpg"; break;
case LC_IMAGE_PNG: ext = ".png"; break;
}
- i = strlen (opts.path);
- if (i && opts.path[i] != '/' && opts.path[i] != '\\')
- strcat (opts.path, "/");
+ i = strlen (opts.path);
+ if (i && opts.path[i] != '/' && opts.path[i] != '\\')
+ strcat (opts.path, "/");
+ Sys_ProfileSaveString ("Default", "HTML Path", opts.path);
+
/*
// Create destination folder
- char *MyPath = strdup(dlg.m_strFolder);
- char *p = MyPath;
- int psave;
- while(*p)
- {
- while(*p && *p != '\\')
+ char *MyPath = strdup(dlg.m_strFolder);
+ char *p = MyPath;
+ int psave;
+ while(*p)
+ {
+ while(*p && *p != '\\')
++p;
psave = *p;
@@ -3476,6 +3498,8 @@ void Project::HandleCommand(LC_COMMANDS id, unsigned long nParam)
}
free(MyPath);
*/
+ main_window->BeginWait ();
+
if (opts.singlepage)
{
strcpy(fn, opts.path);
@@ -3654,6 +3678,7 @@ void Project::HandleCommand(LC_COMMANDS id, unsigned long nParam)
Sys_FinishMemoryRender (render);
free (buf);
}
+ main_window->EndWait ();
}
} break;
diff --git a/win/Htmldlg.cpp b/win/Htmldlg.cpp
index 0c9e18a..7e73511 100644
--- a/win/Htmldlg.cpp
+++ b/win/Htmldlg.cpp
@@ -91,15 +91,3 @@ void CHTMLDlg::OnHtmdlgBrowsefolder()
UpdateData (FALSE);
}
}
-
-void CHTMLDlg::OnOK()
-{
- UpdateData();
-
- if (m_strFolder[m_strFolder.GetLength()-1] != '\\')
- m_strFolder += "\\";
-
- UpdateData(FALSE);
-
- CDialog::OnOK();
-}
diff --git a/win/Htmldlg.h b/win/Htmldlg.h
index 4e11678..fb4af17 100644
--- a/win/Htmldlg.h
+++ b/win/Htmldlg.h
@@ -46,7 +46,6 @@ protected:
afx_msg void OnListClick();
afx_msg void OnLayoutClick();
afx_msg void OnHtmdlgBrowsefolder();
- virtual void OnOK();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
diff --git a/win/Imagedlg.cpp b/win/Imagedlg.cpp
index 11b1c67..f2ca2b1 100644
--- a/win/Imagedlg.cpp
+++ b/win/Imagedlg.cpp
@@ -96,22 +96,16 @@ void CImageDlg::OnOK()
opts->to = m_nTo;
opts->multiple = m_nSingle != 0;
- DWORD dwImage = m_nFormat;
- if (m_bProgressive)
- dwImage |= LC_IMAGE_PROGRESSIVE;
- if (m_bTransparent)
- dwImage |= LC_IMAGE_TRANSPARENT;
- if (m_bHighcolor)
- dwImage |= LC_IMAGE_HIGHCOLOR;
-
- if (m_bHTML)
- {
- theApp.WriteProfileInt("Default", "HTML Options", dwImage);
- theApp.WriteProfileInt("Default", "HTML Width", m_nWidth);
- theApp.WriteProfileInt("Default", "HTML Height", m_nHeight);
- }
- else
+ if (!m_bHTML)
{
+ DWORD dwImage = m_nFormat;
+ if (m_bProgressive)
+ dwImage |= LC_IMAGE_PROGRESSIVE;
+ if (m_bTransparent)
+ dwImage |= LC_IMAGE_TRANSPARENT;
+ if (m_bHighcolor)
+ dwImage |= LC_IMAGE_HIGHCOLOR;
+
theApp.WriteProfileInt("Default", "Image Options", dwImage);
theApp.WriteProfileInt("Default", "Image Width", m_nWidth);
theApp.WriteProfileInt("Default", "Image Height", m_nHeight);
diff --git a/win/Leocad.clw b/win/Leocad.clw
index 3852d08..2f88430 100644
--- a/win/Leocad.clw
+++ b/win/Leocad.clw
@@ -130,7 +130,7 @@ HeaderFile=Cadview.h
ImplementationFile=Cadview.cpp
Filter=C
VirtualFilter=VWC
-LastObject=ID_FILE_PRINT_PREVIEW
+LastObject=CCADView
[CLS:CColorPicker]
Type=0
@@ -1095,14 +1095,15 @@ Command72=ID_VIEW_STEP_FIRST
Command73=ID_VIEW_STEP_LAST
Command74=ID_VIEW_STEP_CHOOSE
Command75=ID_VIEW_STEP_INSERT
-Command76=ID_VIEW_FULLSCREEN
-Command77=ID_VIEW_NEWVIEW
-Command78=ID_HELP_FINDER
-Command79=ID_HELP_LEOCADHOMEPAGE
-Command80=ID_HELP_SENDEMAIL
-Command81=ID_HELP_CHECKFORUPDATES
-Command82=ID_APP_ABOUT
-CommandCount=82
+Command76=ID_VIEW_STEP_DELETE
+Command77=ID_VIEW_FULLSCREEN
+Command78=ID_VIEW_NEWVIEW
+Command79=ID_HELP_FINDER
+Command80=ID_HELP_LEOCADHOMEPAGE
+Command81=ID_HELP_SENDEMAIL
+Command82=ID_HELP_CHECKFORUPDATES
+Command83=ID_APP_ABOUT
+CommandCount=83
[MNU:IDR_POPUPS]
Type=1