AlbumShaper  1.0a3
whatsNew.cpp
Go to the documentation of this file.
1 //==============================================
2 // copyright : (C) 2003-2005 by Will Stokes
3 //==============================================
4 // This program is free software; you can redistribute it
5 // and/or modify it under the terms of the GNU General
6 // Public License as published by the Free Software
7 // Foundation; either version 2 of the License, or
8 // (at your option) any later version.
9 //==============================================
10 
11 //Systemwide includes
12 #include <qfile.h>
13 #include <q3textstream.h>
14 #include <qstringlist.h>
15 #include <qnamespace.h>
16 #include <qkeysequence.h>
17 
18 //Projectwide includes
19 #include "whatsNew.h"
20 #include "helpWindow.h"
21 #include "../../config.h"
22 
23 //==============================================
25 {
26  return QString("%1/whatsNew.html").arg(TEMP_DIR);
27 }
28 //==============================================
29 void WhatsNew::generateHTML(Q3TextStream::Encoding type, QString charSet)
30 {
31 
32  QString whatsNew = HelpWindow::tr("What's New in Album Shaper %1");
33 
34  //create/open html file
35  QFile file( filename() );
36  if(file.open(QIODevice::WriteOnly))
37  {
38  //-----
39  Q3TextStream stream;
40  stream.setEncoding( type );
41  stream.setDevice( &file );
42  //-----
43  stream << "<html><head>\n";
44  stream << "<meta http-equiv='Content-Type' content='text/html; charset=" << charSet << "'>\n";
45  stream << "</head><body>\n";
46 
47 
48  //-------------------------------------------------------------
49  // Album Shaper 2.1 Improvements
50  //-------------------------------------------------------------
51  stream << "<table cellpadding='4'><tr>\n";
52  stream << " <td><img src='" << IMAGE_PATH << "helpImages/asHelpLogoSmall.png'></td>\n";
53  stream << " <td valign='middle'><font face='Arial, sans-serif' size='+3'>";
54  stream << whatsNew.arg(ALBUMSHAPER_VERSION);
55  stream << "</font></td>\n";
56  stream << "</tr></table>\n";
57 
58 
59 
60  stream << "<font face='Arial, sans-serif'>\n";
61  stream << "<table cellspacing='10' cellpadding='0'><tr><td>\n";
62 
63  stream << "<table width='100%' cellpadding='4' cellspacing='0'><tr><td bgcolor='lightgray'>\n";
64  stream << "<font size='+1'><b>" << HelpWindow::tr("New Features / Feature Enhancements:") << "</b></font>\n";
65  stream << "</td></tr></table>\n";
66  stream << "<ul>\n";
67  item( stream, HelpWindow::tr("New mosaic manipulation!"));
68  item( stream, HelpWindow::tr("Aspect ratio selection usability improvements (smarter placement with regard to rotating selections, positioning, and support for tall photos)"));
69  item( stream, HelpWindow::tr("Improved B/W and Sepia effects (weights now based on modern display phosphor characteristics)"));
70  item( stream, HelpWindow::tr("Added French translation"));
71  item( stream, HelpWindow::tr("German translation brought up to date"));
72  stream << "</ul>\n";
73 
74  stream << "<table width='100%' cellpadding='4' cellspacing='0'><tr><td bgcolor='lightgray'>\n";
75  stream << "<font size='+1'><b>" << HelpWindow::tr("Minor Improvements:") << "</b></font>\n";
76  stream << "</td></tr></table>\n";
77  stream << "<ul>\n";
78  item( stream, HelpWindow::tr("Rewrote AlbumShaper.pro project file to support changing install location on Unix systems"));
79  item( stream, HelpWindow::tr("Changed \"Disable checking for...\" checkbox to \"Check for photo modifications...\" under settings"));
80  item( stream, HelpWindow::tr("Cut down window and dialog title text by removing \"Album Shaper: \" prefix"));
81  item( stream, HelpWindow::tr("Fixed alert dialogs to handle long message translations"));
82  item( stream, HelpWindow::tr("Various spelling mistakes and other minor visible text improvements"));
83  item( stream, HelpWindow::tr("Fixed fonts in status area and various dialogs"));
84  item( stream, HelpWindow::tr("Cosmetic fixes regarding buttons and layout in Save as dialog"));
85  item( stream, HelpWindow::tr("Added missing red color to some button references in help system"));
86  stream << "</ul>\n";
87 
88  stream << "<table width='100%' cellpadding='4' cellspacing='0'><tr><td bgcolor='lightgray'>\n";
89  stream << "<font size='+1'><b>" << HelpWindow::tr("Bug Fixes:") << "</b></font>\n";
90  stream << "</td></tr></table>\n";
91  stream << "<ul>\n";
92 
93  item( stream, HelpWindow::tr("Fixed a bug where dropping objects from the desktop / file browsers on album / collection image caused Album Shaper to crash"));
94  item( stream, HelpWindow::tr("Fixed a bug where Album Shaper would crash when trying to edit 8 bit grayscale and color images"));
95  item( stream, HelpWindow::tr("Fixed a bug where after removing photos in a collection the edit tab and various buttons below were still enabled"));
96  item( stream, HelpWindow::tr("Fixed a threading bug in the file preview feature that could cause the program to hang"));
97  item( stream, HelpWindow::tr("Fixed the rare 0kb bug! (reverting a photo sometimes caused the photo to be corrupted)"));
98  item( stream, HelpWindow::tr("Disabled user input while loading albums"));
99  item( stream, HelpWindow::tr("Fixed a bug where loading recent albums using the keyboard shortcuts could cause Album Shaper to crash"));
100  item( stream, HelpWindow::tr("Fixed a bugs where using save-as to copy an album from one location to another did not copy over the original form of an image"));
101  item( stream, HelpWindow::tr("Fixed minor bug in Slick theme where carriage returns in photo descriptions caused problems in slide show mode"));
102  item( stream, HelpWindow::tr("Fixed a bug in the Metallic theme where collections that had no cover images could not be reached using the navigation bar"));
103  item( stream, HelpWindow::tr("Fixed various compiler warnings under Linux / FreeBSD"));
104  stream << "</ul>\n";
105 
106  stream << "</td></tr>\n";
107  stream << "</table></font>\n";
108 
109 
110 
111  //-------------------------------------------------------------
112  // Album Shaper 2 Improvements
113  //-------------------------------------------------------------
114  stream << "<table cellpadding='4'><tr>\n";
115  stream << " <td><img src='" << IMAGE_PATH << "helpImages/asHelpLogoSmall.png'></td>\n";
116  stream << " <td valign='middle'><font face='Arial, sans-serif' size='+3'>";
117  stream << whatsNew.arg(2);
118  stream << "</font></td>\n";
119  stream << "</tr></table>\n";
120 
121  stream << "<font face='Arial, sans-serif'>\n";
122  stream << "<table cellspacing='10' cellpadding='0'><tr><td>\n";
123 
124  stream << "<table width='100%' cellpadding='4' cellspacing='0'><tr><td bgcolor='lightgray'>\n";
125  stream << "<font size='+1'><b>" << HelpWindow::tr("Importing and Organizing:") << "</b></font>\n";
126  stream << "</td></tr></table>\n";
127  stream << "<ul>\n";
128  item( stream, HelpWindow::tr("Much faster image resizing, enabling you to quickly add photos to your albums"));
129  item( stream, HelpWindow::tr("During add photos/batch operations, the number of remaining items is included in a status message"));
130  item( stream, HelpWindow::tr("Smaller album sizes and better EXIF support"));
131  item( stream, HelpWindow::tr("Add photo preview and detail in add photos dialog"));
132  stream << "</ul>\n";
133 
134  stream << "<table width='100%' cellpadding='4' cellspacing='0'><tr><td bgcolor='lightgray'>\n";
135  stream << "<font size='+1'><b>" << HelpWindow::tr("Rewritten Editing Interface:") << "</b></font>\n";
136  stream << "</td></tr></table>\n";
137  stream << "<ul>\n";
138  item( stream, HelpWindow::tr("Much faster lossless rotating and flipping transformations"));
139  item( stream, HelpWindow::tr("Semi-automatic tilt correction tool"));
140  item( stream, HelpWindow::tr("Automatic color enhancement tool"));
141  item( stream, HelpWindow::tr("Automatic contrast enhancement tool"));
142  item( stream, HelpWindow::tr("Sophisticated red-eye reduction tool"));
143  item( stream, HelpWindow::tr("Histogram interface for changing brightness, contrast, and color and luminosity levels"));
144  item( stream, HelpWindow::tr("Grain editor for blurring and sharpening images"));
145  item( stream, HelpWindow::tr("Sepia, oil painting, and color embossing image manipulations"));
146  item( stream, HelpWindow::tr("Crop, B+W, and invert manipulations rewritten and significantly faster"));
147  item( stream, HelpWindow::tr("Real time previews of image manipulations"));
148  item( stream, HelpWindow::tr("Crop to preset aspect ratios or current display resolution"));
149  item( stream, HelpWindow::tr("DPI indicated with green/red coloring and text when cropping to preset image sizes"));
150  item( stream, HelpWindow::tr("Selected regions can be adjusted by dragging any side, corner, or entire selection around"));
151  item( stream, HelpWindow::tr("Selected regions can be rotated and scaled in place while maintaining their aspect ratio"));
152  item( stream, HelpWindow::tr("Selected regions can be nudged left/right/up/down using arrow keys"));
153  item( stream, HelpWindow::tr("New selection painting system enhances contrast to make selections stand out"));
154  item( stream, HelpWindow::tr("Selection resolutions are displayed, letting you crop to exact sizes"));
155  item( stream, HelpWindow::tr("Photos can be rotated and flipped within editing interface"));
156  item( stream, HelpWindow::tr("Busy indicators and progress bar for all non-instantaneous operations within editing interface"));
157  item( stream, HelpWindow::tr("Double click any photo to edit"));
158  item( stream, HelpWindow::tr("Switch photos while in editing interface"));
159  item( stream, HelpWindow::tr("Photo modifications always reversible"));
160  stream << "</ul>\n";
161 
162  stream << "<table width='100%' cellpadding='4' cellspacing='0'><tr><td bgcolor='lightgray'>\n";
163  stream << "<font size='+1'><b>" << HelpWindow::tr("Loading, Saving, and Exporting:") << "</b></font>\n";
164  stream << "</td></tr></table>\n";
165  stream << "<ul>\n";
166  item( stream, HelpWindow::tr("Quickly load albums using the new <font color='red'>Open Recent</font> menu"));
167  item( stream, HelpWindow::tr("Revert to last saved album"));
168  item( stream, HelpWindow::tr("Set desktop wallpaper with the click of a button"));
169  item( stream, HelpWindow::tr("Export small web galleries"));
170  item( stream, HelpWindow::tr("Export images for printing"));
171  stream << "</ul>\n";
172 
173  stream << "<table width='100%' cellpadding='4' cellspacing='0'><tr><td bgcolor='lightgray'>\n";
174  stream << "<font size='+1'><b>" << HelpWindow::tr("Bug Fixes:") << "</b></font>\n";
175  stream << "</td></tr></table>\n";
176  stream << "<ul>\n";
177  item( stream, HelpWindow::tr("Windows 95, 98 and ME now experimentally supported"));
178  item( stream, HelpWindow::tr("Files ending with .HTM are now removed during save"));
179  item( stream, HelpWindow::tr("qmake does not need to be run a second time before doing a make install on Linux/FreeBSD"));
180  item( stream, HelpWindow::tr("Close button on the Album Statistics window now displayed properly"));
181  item( stream, HelpWindow::tr("Support for Norwegian variant of Windows"));
182  item( stream, HelpWindow::tr("Expanding and contracting a photo with an empty description no longer trips album modified bit"));
183  item( stream, HelpWindow::tr("Fixed bug involving progress messages erratically disappearing next to progress bar"));
184  item( stream, HelpWindow::tr("Flip vertical and flip horizontal button images swapped to properly reflect these actions"));
185  item( stream, HelpWindow::tr("Selection bugs in editing interface fixed with complete rewrite of selection system"));
186  item( stream, HelpWindow::tr("Albums can now be loaded/saved to paths that contain spaces"));
187  item( stream, HelpWindow::tr("Command-M now minimizes application to the Dock on Mac OSX"));
188  item( stream, HelpWindow::tr("Plugged various memory leaks"));
189  item( stream, HelpWindow::tr("Fixed horizontal scrollbars showing when expanding photos"));
190  item( stream, HelpWindow::tr("Fixed hang when user expands photo then switches to a different apps"));
191  item( stream, HelpWindow::tr("Fixed minor painting mistakes when editing photo descriptions"));
192  item( stream, HelpWindow::tr("Photos added to collections through drag and drop are now inserted in the correct order."));
193  item( stream, HelpWindow::tr("Fixed many problems which resulted from photo and album paths including accented characters."));
194  item( stream, HelpWindow::tr("Fixed various glitches that occured when rearranging photos within collections."));
195 
196  stream << "</ul>\n";
197 
198  stream << "</td></tr>\n";
199  stream << "</table></font>\n";
200 
201 
202  //-------------------------------------------------------------
203  stream << "</body></html>\n";
204  file.close();
205  }
206 }
207 //==============================================
208 void WhatsNew::item( Q3TextStream& stream, QString item )
209 {
210  stream << "<li>" << item << "\n";
211 }
212 //==============================================
213 
214 
QString TEMP_DIR
Definition: config.cpp:23
static void generateHTML(Q3TextStream::Encoding type, QString charSet)
generates the html file
Definition: whatsNew.cpp:29
QString IMAGE_PATH
Definition: config.cpp:18
static QString filename()
returns the html filename
Definition: whatsNew.cpp:24
#define ALBUMSHAPER_VERSION
Definition: config.h:21
static void item(Q3TextStream &, QString item)
Definition: whatsNew.cpp:208