SVN commit 781430 by skelly:
Remove kfontdialog and add more specific font actions to the
text toolbar:
Font colour,
font background colour,
font family,
font size.
FEATURE:
GUI:
M +20 -4 KJotsMain.cpp
M +44 -13 kjotsedit.cpp
M +4 -1 kjotsedit.h
M +7 -2 kjotsui.rc
--- trunk/KDE/kdeutils/kjots/KJotsMain.cpp #781429:781430
 -70,6
+70,8 
#include <kstandarddirs.h>
#include <kstandardshortcut.h>
#include <kstandardaction.h>
+#include <kfontaction.h>
+#include <kfontsizeaction.h>
#include "KJotsSettings.h"
#include "kjotsbookmarks.h"
 -277,6
+279,21 
action->setIcon(KIcon("format-text-strikethrough&quo
t;));
action->setCheckable(true);
+ action =
actionCollection()->addAction("font_color");
+ action->setText(i18n("Font Color"));
+
action->setIcon(KIcon("format-stroke-color"));
+ action =
actionCollection()->addAction("font_background_color
");
+ action->setText(i18n("Highlight"));
+
action->setIcon(KIcon("format-fill-color"));
+
+ action =
actionCollection()->add<KFontAction>("change_f
ont");
+ action->setText(i18n("Font Family"));
+
action->setIcon(KIcon("preferences-desktop-font"
;));
+
+ action =
actionCollection()->add<KFontSizeAction>("chan
ge_font_size");
+ action->setText(i18n("Font Size"));
+
action->setIcon(KIcon("preferences-desktop-font"
;));
+
action =
actionCollection()->addAction("auto_bullet");
action->setText(i18n("Auto Bullets"));
action->setIcon(KIcon("format-list-unordered"))
;
 -288,10
+305,6 
action->setEnabled(false);
connect(editor, SIGNAL(copyAvailable(bool)), action,
SLOT(setEnabled(bool)));
- action =
actionCollection()->addAction("change_font");
- action->setText(i18n("Fonts..."));
-
action->setIcon(KIcon("preferences-desktop-font"
;));
-
KStandardAction::print(this, SLOT(onPrint()),
actionCollection());
KStandardAction::quit(this, SLOT(onQuit()),
actionCollection());
 -433,9
+446,12 
pageOnlyActions->addAction( "bold",
actionCollection()->action("bold") );
pageOnlyActions->addAction( "underline",
actionCollection()->action("underline") );
pageOnlyActions->addAction( "strike_out",
actionCollection()->action("strike_out") );
+ pageOnlyActions->addAction( "font_color",
actionCollection()->action("font_color") );
+ pageOnlyActions->addAction(
"font_background_color",
actionCollection()->action("font_background_color&qu
ot;) );
pageOnlyActions->addAction( "auto_bullet",
actionCollection()->action("auto_bullet") );
pageOnlyActions->addAction(
"horizontal_rule",
actionCollection()->action("horizontal_rule")
);
pageOnlyActions->addAction( "change_font",
actionCollection()->action("change_font") );
+ pageOnlyActions->addAction(
"change_font_size",
actionCollection()->action("change_font_size")
);
// Actions that are used only when a page is selected.
bookOnlyActions = new
KActionCollection((QObject*)this);
--- trunk/KDE/kdeutils/kjots/kjotsedit.cpp #781429:781430
 -33,8
+33,10 
#include <QContextMenuEvent>
#include <kaction.h>
+#include <kfontaction.h>
+#include <kfontsizeaction.h>
#include <kactioncollection.h>
-#include <kfontdialog.h>
+#include <kcolordialog.h>
#include "kjotsentry.h"
#include "bookshelf.h"
 -56,7
+58,6 
this, SLOT( menuActivated( QAction* ) ) );
popup->addSeparator();
-
popup->addAction(actionCollection->action("change
_font"));
popup->addAction(actionCollection->action("copyIn
toTitle"));
popup->exec( event->globalPos() );
 -73,14
+74,17 
connect(actionCollection->action("underline"),
SIGNAL(triggered()), SLOT(onUnderline()));
connect(actionCollection->action("bold"),
SIGNAL(triggered()), SLOT(onBold()));
connect(actionCollection->action("strike_out"),
SIGNAL(triggered()), SLOT(onStrikeOut()));
+
connect(actionCollection->action("font_color"),
SIGNAL(triggered()), SLOT(onFontColor()));
+
connect(actionCollection->action("font_background_co
lor"), SIGNAL(triggered()),
SLOT(onFontBackgroundColor()));
+
connect(actionCollection->action("change_font")
, SIGNAL(triggered(const QString&)),
SLOT(onFontFamilySelection(const QString&)));
+
connect((KFontSizeAction*)actionCollection->action("
change_font_size"), SIGNAL(fontSizeChanged(int)),
SLOT(onFontSizeSelection(int)));
connect(actionCollection->action("linkify"),
SIGNAL(triggered()), SLOT(onLinkify()));
connect(actionCollection->action("auto_bullet")
, SIGNAL(triggered()), SLOT(onAutoBullet()));
connect(actionCollection->action("horizontal_rule&qu
ot;), SIGNAL(triggered()), SLOT(onRule()));
-
connect(actionCollection->action("change_font")
, SIGNAL(triggered()), SLOT(onFonts()));
connect(bookshelf, SIGNAL(itemSelectionChanged()),
SLOT(onBookshelfSelection()));
- connect(this, SIGNAL(selectionChanged()),
SLOT(onSelectionChanged()));
+ connect(this, SIGNAL(cursorPositionChanged()),
SLOT(onSelectionChanged()));
connect(this, SIGNAL(textChanged()),
SLOT(onTextChanged()));
connect(this, SIGNAL(currentCharFormatChanged(const
QTextCharFormat &)),
 -170,7
+174,41 
fmt.setFontStrikeOut(actionCollection->action("strik
e_out")->isChecked() ? true : false);
mergeFormatOnWordOrSelection(fmt);
}
+void KJotsEdit::onFontColor ( void )
+{
+ QColor color =
currentCharFormat().foreground().color();
+ int result = KColorDialog::getColor(color);
+ if ( result == KColorDialog::Accepted ) {
+ QTextCharFormat fmt;
+ fmt.setForeground(color);
+ mergeFormatOnWordOrSelection(fmt);
+ }
+}
+void KJotsEdit::onFontBackgroundColor ( void )
+{
+ QColor color =
currentCharFormat().background().color();
+ int result = KColorDialog::getColor(color);
+ if ( result == KColorDialog::Accepted ) {
+ QTextCharFormat fmt;
+ fmt.setBackground(color);
+ mergeFormatOnWordOrSelection(fmt);
+ }
+}
+void KJotsEdit::onFontFamilySelection ( const QString&
selectedFont )
+{
+ QTextCharFormat fmt;
+ fmt.setFontFamily(selectedFont);
+ mergeFormatOnWordOrSelection(fmt);
+}
+
+void KJotsEdit::onFontSizeSelection ( int selectedFontSize
)
+{
+ QTextCharFormat fmt;
+ fmt.setFontPointSize(selectedFontSize);
+ mergeFormatOnWordOrSelection(fmt);
+}
+
void KJotsEdit::updateCurrentCharFormat(const
QTextCharFormat &format)
{
fontChanged(format.font());
 -182,6
+220,8 
actionCollection->action("bold")->setChecked
(f.bold());
actionCollection->action("underline")->setCh
ecked(f.underline());
actionCollection->action("strike_out")->setC
hecked(f.strikeOut());
+
((KFontAction*)actionCollection->action("change_font
"))->setFont(f.family());
+
((KFontSizeAction*)actionCollection->action("change_
font_size"))->setFontSize(f.pointSize());
}
void KJotsEdit::mergeFormatOnWordOrSelection(const
QTextCharFormat &format)
 -216,15
+256,6 
setTextCursor(c);
}
-void KJotsEdit::onFonts ( void )
-{
- QFont newFont;
- int result = KFontDialog::getFont( newFont );
- if ( result == KFontDialog::Accepted ) {
- setCurrentFont(newFont);
- }
-}
-
void KJotsEdit::onLinkify ( void )
{
QTextCursor selectionCursor = textCursor();
--- trunk/KDE/kdeutils/kjots/kjotsedit.h #781429:781430
 -57,13
+57,16 
void onUnderline ( void );
void onBold ( void );
void onStrikeOut ( void );
+ void onFontColor ( void );
+ void onFontBackgroundColor ( void );
+ void onFontFamilySelection( const QString& f);
+ void onFontSizeSelection( int s);
void updateCurrentCharFormat(const QTextCharFormat
&format);
void fontChanged(const QFont &f);
void mergeFormatOnWordOrSelection(const QTextCharFormat
&format);
void onAutoBullet ( void );
void onRule ( void );
void onLinkify ( void );
- void onFonts ( void );
private:
void disableEditing ( void );
--- trunk/KDE/kdeutils/kjots/kjotsui.rc #781429:781430
 -1,5
+1,5 
<!DOCTYPE kpartgui>
-<kpartgui version="3" name="kjots"
>
+<kpartgui version="4" name="kjots"
>
<MenuBar>
<Menu name="file">
 -18,7
+18,6 
<Menu name="edit">
<Separator append="edit_paste_merge"/>
- <Action name="change_font"/>
<Action name="italics"/>
<Action name="underline"/>
<Action name="bold"/>
 -65,9
+64,15 
<ToolBar name="textToolBar"
fullWidth="true" noMerge="1">
<text>Text Toobar</text>
+ <Action name="change_font"/>
+ <Action name="change_font_size"/>
+ <Separator/>
<Action name="bold"/>
<Action name="italics"/>
<Action name="underline"/>
<Action name="strike_out"/>
+ <Separator/>
+ <Action name="font_color"/>
+ <Action name="font_background_color"/>
</ToolBar>
</kpartgui>
_______________________________________________
kde-docbook mailing list
kde-docbook kde.org
htt
ps://mail.kde.org/mailman/listinfo/kde-docbook
|