[Uml-devel] branches/work/soc-umbrello/umbrello
Gopala Krishna A
krishna.ggk at gmail.com
Fri Jun 6 05:51:13 UTC 2008
SVN commit 817469 by gopala:
Use K_GLOBAL_STATIC instead of my own singleton class for OptionState.
CCMAIL:umbrello-devel at kde.org
M +10 -24 optionstate.cpp
--- branches/work/soc-umbrello/umbrello/optionstate.cpp #817468:817469
@@ -10,40 +10,26 @@
***************************************************************************/
#include "optionstate.h"
+#include <kglobal.h>
namespace Settings{
- struct OptionStateHoster
- {
- static OptionState *pd_optionState;
+ /*
+ * Impt: This ensures creation of OptionState object after
+ * QApplication there by avoiding nasty font rendering issues
+ * which occurs due to creation of QFont objects before
+ * QApplication object is created.
+ */
+ K_GLOBAL_STATIC(OptionState, opState);
- OptionState& getOptionState() {
- if(!pd_optionState) {
- pd_optionState = new OptionState;
- }
- return *pd_optionState;
- }
-
- void setOptionState(const OptionState& optstate) {
- if(!pd_optionState) {
- pd_optionState = new OptionState;
- }
- *pd_optionState = optstate;
- }
- };
-
- OptionStateHoster hoster;
-
- Settings::OptionState* Settings::OptionStateHoster::pd_optionState = NULL;
-
OptionState& getOptionState()
{
- return hoster.getOptionState();
+ return *opState;
}
void setOptionState(const OptionState& optstate)
{
- hoster.setOptionState(optstate);
+ *opState = optstate;
}
} // namespace Settings
More information about the umbrello-devel
mailing list