[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: extragear/office/skrooge
From: Stephane Mankowski <stephane () mankowski ! fr>
Date: 2009-11-15 21:32:54
Message-ID: 1258320774.299680.2978.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 1049802 by smankowski:
frozen widgets (The soluce)
M +1 -3 skgbasegui/CMakeLists.txt
M +0 -42 skgbasegui/skgcombobox.cpp
M +2 -34 skgbasegui/skgcombobox.h
D skgbasegui/skglineedit.cpp
D skgbasegui/skglineedit.h
D skgbasegui/skglineeditdesignerplugin.cpp
D skgbasegui/skglineeditdesignerplugin.h
M +0 -2 skgbasegui/skgwidgetcollectiondesignerplugin.cpp
M +53 -30 skrooge_operation/skgoperationpluginwidget.cpp
M +4 -5 skrooge_operation/skgoperationpluginwidget.h
M +3 -2 skrooge_report/skgreportpluginwidget.cpp
--- trunk/extragear/office/skrooge/skgbasegui/CMakeLists.txt #1049801:1049802
@@ -7,7 +7,7 @@
)
LINK_DIRECTORIES (${LIBRARY_OUTPUT_PATH})
-SET(skgbasegui_SRCS
+SET(skgbasegui_SRCS
skgmainpanel.cpp
skgobjectmodelbase.cpp
skgwidget.cpp
@@ -22,8 +22,6 @@
skgtreeview.cpp
skgcomboboxdesignerplugin.cpp
skgcombobox.cpp
- skglineeditdesignerplugin.cpp
- skglineedit.cpp
skgcalculatoreditdesignerplugin.cpp
skgcalculatoredit.cpp
skggraphicsviewdesignerplugin.cpp
--- trunk/extragear/office/skrooge/skgbasegui/skgcombobox.cpp #1049801:1049802
@@ -26,12 +26,8 @@
SKGComboBox::SKGComboBox(QWidget *parent)
: KComboBox(parent)
{
- connect(this,SIGNAL(activated(QString)),this,SIGNAL(textEdited(QString)));
-
}
-
-
SKGComboBox::~SKGComboBox()
{
}
@@ -51,49 +47,11 @@
setCurrentIndex(pos);
}
-
-
-bool SKGComboBox::isFrozen()
-{
- return frozen;
-}
-
-
-void SKGComboBox::setFrozen ()
-{
- frozen = true;
- QPalette pal = palette();
- pal.setColor(QPalette::Base,pal.color(QPalette::ToolTipBase));
- setPalette(pal);
-
-}
-
-
-void SKGComboBox::setUnfrozen()
-{
- frozen = false;
- setPalette(QPalette());
-}
-
-
-
-void SKGComboBox::setEditable ( bool editable )
-{
- KComboBox::setEditable(editable);
- if(isEditable()) {
- connect(this->lineEdit(),SIGNAL(textEdited(QString)),this,SIGNAL(textEdited(QString)));
- }
-}
-
-
void SKGComboBox::setPalette ( const QPalette& palette )
{
QTextStream out(stdout);
- out << "settingPalette on" << accessibleName() << endl;
KComboBox::setPalette(palette);
lineEdit()->setPalette(palette);
}
-
-
#include "skgcombobox.moc"
--- trunk/extragear/office/skrooge/skgbasegui/skgcombobox.h #1049801:1049802
@@ -63,44 +63,12 @@
/**
* Set the Palette for the combobox.
- * Reimplemented since the base method does
- * not apply the Palette to the underlying
+ * Reimplemented since the base method does
+ * not apply the Palette to the underlying
* QlineEdit
* @param palette the new palette
*/
virtual void setPalette (const QPalette& palette);
-
- /**
- * Returns the combo frozen state
- * @return the frozen state (true or false)
- */
- virtual bool isFrozen();
-
- /**
- * Sets the combo editable state
- * Reimplemented so that the underlying
- * QLineEdit emits the textEdited Signal when
- * textChanged is emitted
- * @param editable true or false
- */
- virtual void setEditable ( bool editable );
-
-public slots:
- virtual void setFrozen();
- virtual void setUnfrozen();
-
-private:
- Q_DISABLE_COPY(SKGComboBox);
- bool frozen;
-
-signals:
- /**
- * Emitted whenever the user selects something from
- * the combo, or when the user types something in the
- * edit field
- */
- void textEdited(QString);
-
};
#endif // SKGCOMBOBOX_H
--- trunk/extragear/office/skrooge/skgbasegui/skgwidgetcollectiondesignerplugin.cpp \
#1049801:1049802 @@ -20,7 +20,6 @@
* @author Stephane MANKOWSKI / Guillaume DE BURE
*/
#include "skgwidgetcollectiondesignerplugin.h"
-#include "skglineeditdesignerplugin.h"
#include "skgcomboboxdesignerplugin.h"
#include "skgtableviewdesignerplugin.h"
#include "skgtreeviewdesignerplugin.h"
@@ -37,7 +36,6 @@
{
widgets.append(new SKGCalculatorEditDesignerPlugin(this));
widgets.append(new SKGComboBoxDesignerPlugin(this));
- widgets.append(new SKGLineEditDesignerPlugin(this));
widgets.append(new SKGDateEditDesignerPlugin(this));
widgets.append(new SKGGraphicsViewDesignerPlugin(this));
widgets.append(new SKGTableViewDesignerPlugin(this));
--- trunk/extragear/office/skrooge/skrooge_operation/skgoperationpluginwidget.cpp \
#1049801:1049802 @@ -179,23 +179,14 @@
ui.kTypeEdit->lineEdit()->installEventFilter ( this );
ui.kUnitEdit->lineEdit()->installEventFilter ( this );
ui.kCategoryEdit->lineEdit()->installEventFilter ( this );
+ ui.kCategoryEdit->installEventFilter ( this );
ui.kCommentEdit->installEventFilter ( this );
ui.kPayeeEdit->lineEdit()->installEventFilter ( this );
ui.kTrackerEdit->lineEdit()->installEventFilter ( this );
ui.kAccountEdit->installEventFilter ( this );
ui.kAmountEdit->installEventFilter ( this );
ui.kNumberEdit->installEventFilter ( this );
-
- // Frozen Widgets
- connect(ui.kTypeEdit,SIGNAL(textEdited(QString)),ui.kTypeEdit,SLOT(setFrozen()));
- connect(ui.kUnitEdit,SIGNAL(textEdited(QString)),ui.kUnitEdit,SLOT(setFrozen()));
- connect(ui.kCategoryEdit,SIGNAL(textEdited(QString)),ui.kCategoryEdit,SLOT(setFrozen()));
- connect(ui.kCommentEdit,SIGNAL(textEdited(QString)),ui.kCommentEdit,SLOT(setFrozen()));
- connect(ui.kPayeeEdit,SIGNAL(textEdited(QString)),ui.kPayeeEdit,SLOT(setFrozen()));
- connect(ui.kTrackerEdit,SIGNAL(textEdited(QString)),ui.kTrackerEdit,SLOT(setFrozen()));
- connect(ui.kAmountEdit,SIGNAL(textEdited(QString)),ui.kAmountEdit,SLOT(setFrozen()));
- connect(ui.kNumberEdit,SIGNAL(textEdited(QString)),ui.kNumberEdit,SLOT(setFrozen()));
-
+
fillComboBoxes();
onOperationCreatorModified();
}
@@ -211,16 +202,32 @@
refreshDelShortcut();
}
-bool SKGOperationPluginWidget::isWidgetEditionEnabled(const QWidget* iWidget)
+bool SKGOperationPluginWidget::isWidgetEditionEnabled(QWidget* iWidget)
{
- return (iWidget ? iWidget->isEnabled() : false);
+ if(iWidget)
+ {
+ QPalette pal = iWidget->palette();
+ return (pal.color(QPalette::Base)!=pal.color(QPalette::ToolTipBase));
+ }
+
+ return false;
}
void SKGOperationPluginWidget::setWidgetEditionEnabled(QWidget* iWidget, bool \
iEnabled) {
if(iWidget && isWidgetEditionEnabled(iWidget)!=iEnabled)
{
- iWidget->setEnabled(iEnabled);
+ if(iEnabled)
+ {
+ iWidget->setPalette(QPalette());
+ }
+ else
+ {
+ QPalette pal = iWidget->palette();
+ pal.setColor(QPalette::Base,pal.color(QPalette::ToolTipBase));
+ iWidget->setPalette(pal);
+ }
+
QString addOn=i18n("Double click to unlock this field");
QString t=iWidget->toolTip().remove('\n'+addOn).remove(addOn);
if(!iEnabled)
@@ -240,6 +247,33 @@
QWidget* ob=(QWidget*) object;
setWidgetEditionEnabled(ob, !isWidgetEditionEnabled(ob));
}
+ else if ( event->type() == QEvent::FocusIn )
+ {
+ QLineEdit* line=dynamic_cast<QLineEdit*>(object);
+ if(line) previousValue=line->text();
+ else
+ {
+ SKGComboBox* cmb=dynamic_cast<SKGComboBox*>(object);
+ if(cmb) previousValue=cmb->text();
+ }
+ }
+ else if ( event->type() == QEvent::FocusOut )
+ {
+ QLineEdit* line=dynamic_cast<QLineEdit*>(object);
+ if(line)
+ {
+ if(previousValue!=line->text()) setWidgetEditionEnabled(line, false);
+ }
+ else
+ {
+ SKGComboBox* cmb=dynamic_cast<SKGComboBox*>(object);
+ if(cmb)
+ {
+ if(previousValue!=cmb->text()) setWidgetEditionEnabled(cmb->lineEdit(), false);
+ }
+ }
+ }
+
return false;
}
@@ -259,17 +293,6 @@
setWidgetEditionEnabled(ui.kAccountEdit, true);
setWidgetEditionEnabled(ui.kAmountEdit, true);
setWidgetEditionEnabled(ui.kNumberEdit, true);
-
- // Remove Frozen State
- ui.kTypeEdit->setUnfrozen();
- ui.kUnitEdit->setUnfrozen();
- ui.kCategoryEdit->setUnfrozen();
-// ui.kCommentEdit->setUnfrozen();
- ui.kPayeeEdit->setUnfrozen();
- ui.kTrackerEdit->setUnfrozen();
-// ui.kAmountEdit->setUnfrozen();
-// ui.kNumberEdit->setUnfrozen();
-
//Mapping
QItemSelectionModel *selModel=ui.kOperationView->selectionModel();
@@ -1661,12 +1684,12 @@
SKGOperationObject op=operations.at ( 0 );
lastFastEditionOperationFound=op.getID();
- if(isWidgetEditionEnabled(ui.kTypeEdit->lineEdit()) && \
!ui.kTypeEdit->isFrozen()) ui.kTypeEdit->setText ( op.getMode() );
- if(isWidgetEditionEnabled(ui.kUnitEdit->lineEdit()) && \
!ui.kUnitEdit->isFrozen()) ui.kUnitEdit->setText ( op.getAttribute ( \
"t_UNIT" ) );
- if(isWidgetEditionEnabled(ui.kCategoryEdit->lineEdit()) && \
!ui.kCategoryEdit->isFrozen()) ui.kCategoryEdit->setText ( op.getAttribute ( \
"t_CATEGORY" ) ); + if(isWidgetEditionEnabled(ui.kTypeEdit->lineEdit())) \
ui.kTypeEdit->setText ( op.getMode() ); + \
if(isWidgetEditionEnabled(ui.kUnitEdit->lineEdit())) ui.kUnitEdit->setText ( \
op.getAttribute ( "t_UNIT" ) ); + \
if(isWidgetEditionEnabled(ui.kCategoryEdit->lineEdit())) ui.kCategoryEdit->setText ( \
op.getAttribute ( "t_CATEGORY" ) );
if(isWidgetEditionEnabled(ui.kCommentEdit)) ui.kCommentEdit->setText ( \
op.getComment() );
- if(isWidgetEditionEnabled(ui.kPayeeEdit->lineEdit()) && \
!ui.kPayeeEdit->isFrozen()) ui.kPayeeEdit->setText ( op.getPayee() );
- if(isWidgetEditionEnabled(ui.kTrackerEdit->lineEdit()) && \
!ui.kTrackerEdit->isFrozen()) ui.kTrackerEdit->setText ( op.getAttribute ( "t_REFUND" \
) ); + if(isWidgetEditionEnabled(ui.kPayeeEdit->lineEdit())) \
ui.kPayeeEdit->setText ( op.getPayee() ); + \
if(isWidgetEditionEnabled(ui.kTrackerEdit->lineEdit())) ui.kTrackerEdit->setText ( \
op.getAttribute ( "t_REFUND" ) );
if(ui.kAccountEdit->isEnabled() ) ui.kAccountEdit->setText ( \
op.getAttribute ( "t_ACCOUNT" ) );
if(isWidgetEditionEnabled(ui.kAmountEdit)) ui.kAmountEdit->setValue ( \
SKGServices::stringToDouble ( op.getAttribute ( "f_QUANTITY" ) ) );
--- trunk/extragear/office/skrooge/skrooge_operation/skgoperationpluginwidget.h \
#1049801:1049802 @@ -143,19 +143,17 @@
void onTemplateModeClicked();
void cleanEditor();
void refreshDelShortcut();
-
+
private:
Q_DISABLE_COPY ( SKGOperationPluginWidget );
SKGError getSelectedOperation ( SKGOperationObject& operation );
- bool isWidgetEditionEnabled(const QWidget* iWidget);
+ bool isWidgetEditionEnabled(QWidget* iWidget);
void setWidgetEditionEnabled(QWidget* iWidget, bool iEnabled);
- QList<QWidget*> frozenWidgets;
-
-
+
bool isTemplateMode();
int getCurrentMode();
void setCurrentMode(int iMode);
@@ -170,6 +168,7 @@
Ui::skgoperationplugin_base ui;
SKGObjectModel* objectModel;
QString operationWhereClause;
+ QString previousValue;
QDomDocument lastState;
KAction* fastEditionAction;
--- trunk/extragear/office/skrooge/skrooge_report/skgreportpluginwidget.cpp \
#1049801:1049802 @@ -58,14 +58,15 @@
connect ( openReportAction, SIGNAL ( triggered ( bool ) ), this, SLOT ( \
onOpenReport() ) );
//Init comboboxes
- AttsForColumns << "d_DATEWEEK" << "d_DATEMONTH" << "d_DATEQUARTER" << \
"d_DATESEMESTER" << "d_DATEYEAR" << ""; + AttsForColumns << "d_date" << \
"d_DATEWEEK" << "d_DATEMONTH" << "d_DATEQUARTER" << "d_DATESEMESTER" << "d_DATEYEAR" \
<< ""; + ui.kColumns->addItem ( i18nc ( "Noun, days","Days" ) );
ui.kColumns->addItem ( i18nc ( "Noun, 7 days","Weeks" ) );
ui.kColumns->addItem ( i18nc ( "Noun, the months in a year","Months" ) );
ui.kColumns->addItem ( i18nc ( "Noun, 3 months","Quarters" ) );
ui.kColumns->addItem ( i18nc ( "Noun, 6 months","Semesters" ) );
ui.kColumns->addItem ( i18nc ( "Noun, the years in a century","Years" ) );
ui.kColumns->addItem ( i18nc ( "Noun, the absence of anything","-- Nothing --" ) \
);
- ui.kColumns->setCurrentIndex(1);
+ ui.kColumns->setCurrentIndex(2);
AttsForLines << "t_REALCATEGORY" << "t_payee" << "t_mode" << "t_TYPEEXPENSENLS" \
<< "t_status" << "t_ACCOUNTTYPE" << "t_UNITTYPE" << "t_REALREFUND";
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic