You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
566 lines
20 KiB
566 lines
20 KiB
/***************************************************************************
|
|
* Copyright (C) 2004 by Alexander Dymo *
|
|
* cloudtemple@mksat.net *
|
|
* *
|
|
* This program is free software; you can redistribute it and/or modify *
|
|
* it under the terms of the GNU General Public License as published by *
|
|
* the Free Software Foundation; either version 2 of the License, or *
|
|
* (at your option) any later version. *
|
|
* *
|
|
* This program is distributed in the hope that it will be useful, *
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
|
|
* GNU General Public License for more details. *
|
|
* *
|
|
* You should have received a copy of the GNU General Public License *
|
|
* along with this program; if not, write to the *
|
|
* Free Software Foundation, Inc., *
|
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
|
|
***************************************************************************/
|
|
|
|
#include "kdevdesigner_part.h"
|
|
|
|
#include <kinstance.h>
|
|
#include <kaction.h>
|
|
#include <kactionclasses.h>
|
|
#include <kstdaction.h>
|
|
#include <kfiledialog.h>
|
|
#include <kdebug.h>
|
|
#include <klocale.h>
|
|
#include <kiconloader.h>
|
|
|
|
#include <tqfile.h>
|
|
#include <tqtextstream.h>
|
|
#include <tqtoolbar.h>
|
|
#include <tqmenubar.h>
|
|
#include <tqptrlist.h>
|
|
#include <tqstatusbar.h>
|
|
|
|
#include "mainwindow.h"
|
|
#include "designeraction.h"
|
|
#include "formwindow.h"
|
|
|
|
KDevDesignerPart::KDevDesignerPart( TQWidget *parentWidget, const char *// widgetName
|
|
,
|
|
TQObject *parent, const char *name, const TQStringList &args )
|
|
: KInterfaceDesigner::Designer(parent, name)
|
|
{
|
|
setInstance( KDevDesignerPartFactory::instance() );
|
|
|
|
m_widget = new MainWindow( this, true );
|
|
m_widget->reparent(parentWidget, TQPoint(0,0));
|
|
setupDesignerWindow();
|
|
|
|
setWidget(m_widget);
|
|
|
|
setupActions();
|
|
if (args.contains("in shell"))
|
|
setXMLFile("kdevdesigner_part_sh.rc");
|
|
else
|
|
setXMLFile("kdevdesigner_part.rc");
|
|
|
|
setReadWrite(true);
|
|
setModified(false);
|
|
|
|
connect(m_widget, TQT_SIGNAL(formModified(bool )), this, TQT_SLOT(formModified(bool)));
|
|
}
|
|
|
|
void KDevDesignerPart::setupDesignerWindow()
|
|
{
|
|
m_widget->menuBar()->hide();
|
|
m_widget->layoutToolBar->hide();
|
|
m_widget->projectToolBar->hide();
|
|
m_widget->toolsToolBar->hide();
|
|
m_widget->statusBar()->hide();
|
|
}
|
|
|
|
static TQIconSet createPartIconSet( const TQString &name )
|
|
{
|
|
TQIconSet ic( BarIcon( "" + name, KDevDesignerPartFactory::instance() ) );
|
|
TQString prefix = "designer_";
|
|
int right = name.length() - prefix.length();
|
|
ic.setPixmap( BarIcon( prefix + "d_" + name.right( right ), KDevDesignerPartFactory::instance() ),
|
|
TQIconSet::Small, TQIconSet::Disabled );
|
|
return ic;
|
|
}
|
|
|
|
void KDevDesignerPart::setupActions( )
|
|
{
|
|
KAction *action;
|
|
action = KStdAction::openNew(this, TQT_SLOT(fileNew()), actionCollection());
|
|
action = KStdAction::open(this, TQT_SLOT(fileOpen()), actionCollection());
|
|
action = KStdAction::close(this, TQT_SLOT(fileClose()), actionCollection());
|
|
stateSync(action, m_widget->actionFileClose);
|
|
action = KStdAction::save(this, TQT_SLOT(save()), actionCollection());
|
|
stateSync(action, m_widget->actionFileSave);
|
|
action = KStdAction::saveAs(this, TQT_SLOT(fileSaveAs()), actionCollection());
|
|
stateSync(action, m_widget->actionFileSaveAs);
|
|
action = new KAction(i18n("Save Al&l"), 0, this, TQT_SLOT(fileSaveAs()), actionCollection(), "file_saveall");
|
|
stateSync(action, m_widget->actionFileSaveAll);
|
|
new KAction(i18n("Create &Template..."), 0, this, TQT_SLOT(fileCreateTemplate()), actionCollection(), "file_createtemplate");
|
|
|
|
action = KStdAction::undo(this, TQT_SLOT(editUndo()), actionCollection());
|
|
stateSync(action, m_widget->actionEditUndo);
|
|
action = KStdAction::redo(this, TQT_SLOT(editRedo()), actionCollection());
|
|
stateSync(action, m_widget->actionEditRedo);
|
|
action = KStdAction::cut(this, TQT_SLOT(editCut()), actionCollection());
|
|
stateSync(action, m_widget->actionEditCut);
|
|
action = KStdAction::copy(this, TQT_SLOT(editCopy()), actionCollection());
|
|
stateSync(action, m_widget->actionEditCopy);
|
|
action = KStdAction::paste(this, TQT_SLOT(editPaste()), actionCollection());
|
|
stateSync(action, m_widget->actionEditPaste);
|
|
action = new KAction(i18n("&Delete"), Key_Delete, this, TQT_SLOT(editDelete()), actionCollection(), "edit_delete");
|
|
stateSync(action, m_widget->actionEditDelete);
|
|
action = KStdAction::selectAll(this, TQT_SLOT(editSelectAll()), actionCollection());
|
|
stateSync(action, m_widget->actionEditSelectAll);
|
|
action = new KAction(i18n("Chec&k Accelerators"), ALT + Key_R, this, TQT_SLOT(editAccels()), actionCollection(), "edit_accels");
|
|
stateSync(action, m_widget->actionEditAccels);
|
|
action = new KAction(i18n("S&lots..."), createPartIconSet("designer_editslots.png"), 0, this, TQT_SLOT(editFunctions()), actionCollection(), "edit_functions");
|
|
stateSync(action, m_widget->actionEditFunctions);
|
|
action = new KAction(i18n("Co&nnections..."), createPartIconSet("designer_connecttool.png"), 0, this, TQT_SLOT(editConnections()), actionCollection(), "edit_connections");
|
|
stateSync(action, m_widget->actionEditConnections);
|
|
action = new KAction(i18n("&Form Settings..."), 0, this, TQT_SLOT(editFormSettings()), actionCollection(), "edit_formsettings");
|
|
stateSync(action, m_widget->actionEditFormSettings);
|
|
|
|
action = new KAction(i18n("&Add File..."), 0, this, TQT_SLOT(projectAddFile()), actionCollection(), "project_addfile");
|
|
stateSync(action, m_widget->actionProjectAddFile);
|
|
action = new KAction(i18n("&Image Collection..."), 0, this, TQT_SLOT(projectImageCollection()), actionCollection(), "project_imagecollection");
|
|
stateSync(action, m_widget->actionEditPixmapCollection);
|
|
action = new KAction(i18n("&Database Connections..."), 0, this, TQT_SLOT(projectDatabaseCollections()), actionCollection(), "project_databasecollections");
|
|
stateSync(action, m_widget->actionEditDatabaseConnections);
|
|
action = new KAction(i18n("&Designer Project Settings..."), 0, this, TQT_SLOT(projectSettings()), actionCollection(), "project_settings");
|
|
stateSync(action, m_widget->actionEditProjectSettings);
|
|
|
|
KRadioAction *toggle;
|
|
toggle = new KRadioAction(i18n("&Pointer"), createPartIconSet("designer_pointer.png"), Key_F2, actionCollection(), "tools_pointer");
|
|
setupToolsAction(toggle, m_widget->actionPointerTool);
|
|
pointerAction = toggle;
|
|
toggle = new KRadioAction(i18n("&Connect Signal/Slots"), createPartIconSet("designer_connecttool.png"), Key_F3, actionCollection(), "tools_connect");
|
|
setupToolsAction(toggle, m_widget->actionConnectTool);
|
|
toggle = new KRadioAction(i18n("Tab &Order"), createPartIconSet("designer_ordertool.png"), Key_F4, actionCollection(), "tools_taborder");
|
|
setupToolsAction(toggle, m_widget->actionOrderTool);
|
|
toggle = new KRadioAction(i18n("Set &Buddy"), createPartIconSet("designer_setbuddy.png"), Key_F12, actionCollection(), "tools_setbuddy");
|
|
setupToolsAction(toggle, m_widget->actionBuddyTool);
|
|
new KAction(i18n("Configure Toolbox..."), 0, this, TQT_SLOT(toolsConfigureToolbox()), actionCollection(), "tools_toolbox");
|
|
new KAction(i18n("Edit &Custom Widgets..."), 0, this, TQT_SLOT(toolsEditCustomWidgets()), actionCollection(), "tools_editcustomwidgets");
|
|
|
|
action = new KAction(i18n("Adjust &Size"), createPartIconSet("designer_adjustsize.png"), CTRL + Key_J, this, TQT_SLOT(layoutAdjustSize()), actionCollection(), "layout_adjustsize");
|
|
stateSync(action, m_widget->actionEditAdjustSize);
|
|
action = new KAction(i18n("Lay Out &Horizontally"), createPartIconSet("designer_edithlayout.png"), CTRL + Key_H, this, TQT_SLOT(layoutHLayout()), actionCollection(), "layout_h");
|
|
stateSync(action, m_widget->actionEditHLayout);
|
|
action = new KAction(i18n("Lay Out &Vertically"), createPartIconSet("designer_editvlayout.png"), CTRL + Key_V, this, TQT_SLOT(layoutVLayout()), actionCollection(), "layout_v");
|
|
stateSync(action, m_widget->actionEditVLayout);
|
|
action = new KAction(i18n("Lay Out in &Grid"), createPartIconSet("designer_editgrid.png"), CTRL + Key_G, this, TQT_SLOT(layoutGridLayout()), actionCollection(), "layout_grid");
|
|
stateSync(action, m_widget->actionEditGridLayout);
|
|
action = new KAction(i18n("Lay OutQt::Horizontally (in S&plitter)"), createPartIconSet("designer_editvlayoutsplit.png"), 0, this, TQT_SLOT(layoutSplitHLayout()), actionCollection(), "layout_splith");
|
|
stateSync(action, m_widget->actionEditSplitHorizontal);
|
|
action = new KAction(i18n("Lay OutQt::Vertically (in Sp&litter)"), createPartIconSet("designer_edithlayoutsplit.png"), 0, this, TQT_SLOT(layoutSplitVLayout()), actionCollection(), "layout_splitv");
|
|
stateSync(action, m_widget->actionEditSplitVertical);
|
|
action = new KAction(i18n("&Break Layout"), createPartIconSet("designer_editbreaklayout.png"), CTRL + Key_B, this, TQT_SLOT(layoutBreak()), actionCollection(), "layout_break");
|
|
stateSync(action, m_widget->actionEditBreakLayout);
|
|
toggle = new KRadioAction(i18n("Add Spacer"), createPartIconSet("designer_spacer.png"), 0, actionCollection(), "layout_spacer");
|
|
setupToolsAction(toggle, m_widget->actionInsertSpacer);
|
|
|
|
action = new KAction(i18n("Preview &Form"), CTRL + Key_T, this, TQT_SLOT(windowPreview()), actionCollection(), "window_preview");
|
|
stateSync(action, m_widget->actionPreview);
|
|
action = new KAction(i18n("Ne&xt Form"), CTRL + Key_F6, this, TQT_SLOT(windowNext()), actionCollection(), "window_next");
|
|
stateSync(action, m_widget->actionWindowNext);
|
|
action = new KAction(i18n("Pre&vious Form"), CTRL + SHIFT + Key_F6, this, TQT_SLOT(windowPrev()), actionCollection(), "window_prev");
|
|
stateSync(action, m_widget->actionWindowPrevious);
|
|
|
|
action = KStdAction::preferences(this, TQT_SLOT(editPreferences()), actionCollection());
|
|
action->setText(i18n("Configure &KDevDesigner..."));
|
|
stateSync(action, m_widget->actionEditPreferences);
|
|
}
|
|
|
|
KDevDesignerPart::~KDevDesignerPart()
|
|
{
|
|
}
|
|
|
|
void KDevDesignerPart::setReadWrite(bool rw)
|
|
{
|
|
ReadWritePart::setReadWrite(rw);
|
|
}
|
|
|
|
void KDevDesignerPart::setModified(bool modified)
|
|
{
|
|
/* KAction *save = actionCollection()->action(KStdAction::stdName(KStdAction::Save));
|
|
if (!save)
|
|
return;
|
|
if (modified)
|
|
save->setEnabled(true);
|
|
else
|
|
save->setEnabled(false);*/
|
|
|
|
ReadWritePart::setModified(modified);
|
|
}
|
|
|
|
bool KDevDesignerPart::openFile()
|
|
{
|
|
m_widget->fileOpen("", "", m_file);
|
|
return true;
|
|
}
|
|
|
|
bool KDevDesignerPart::saveFile()
|
|
{
|
|
if (isReadWrite() == false)
|
|
return false;
|
|
m_widget->actionFileSaveAll->activate();
|
|
return true;
|
|
}
|
|
|
|
void KDevDesignerPart::stateSync( KAction * kaction, TQAction * qaction )
|
|
{
|
|
if (!qaction)
|
|
return;
|
|
kaction->setEnabled(qaction->isEnabled());
|
|
DesignerAction *ac = dynamic_cast<DesignerAction*>(qaction);
|
|
if (!ac)
|
|
return;
|
|
connect(ac, TQT_SIGNAL(actionEnabled(bool )), kaction, TQT_SLOT(setEnabled(bool )));
|
|
}
|
|
|
|
void KDevDesignerPart::setupToolsAction( KRadioAction * toggle, TQAction * action )
|
|
{
|
|
if (!action)
|
|
return;
|
|
|
|
toggle->setGroup("tools");
|
|
toggle->setExclusiveGroup("tools");
|
|
connect(action, TQT_SIGNAL(toggled(bool )), this, TQT_SLOT(setToggleActionChecked(bool )));
|
|
connect(toggle, TQT_SIGNAL(toggled(bool)), this, TQT_SLOT(setToggleActionOn(bool)));
|
|
toggle->setChecked(action->isOn());
|
|
m_actionMap[action] = toggle;
|
|
m_actionMap2[toggle] = action;
|
|
}
|
|
|
|
|
|
// It's usually safe to leave the factory code alone.. with the
|
|
// notable exception of the KAboutData data
|
|
#include <kaboutdata.h>
|
|
#include <klocale.h>
|
|
|
|
KInstance* KDevDesignerPartFactory::s_instance = 0L;
|
|
KAboutData* KDevDesignerPartFactory::s_about = 0L;
|
|
|
|
KDevDesignerPartFactory::KDevDesignerPartFactory()
|
|
: KParts::Factory()
|
|
{
|
|
}
|
|
|
|
KDevDesignerPartFactory::~KDevDesignerPartFactory()
|
|
{
|
|
delete s_instance;
|
|
delete s_about;
|
|
|
|
s_instance = 0L;
|
|
}
|
|
|
|
KParts::Part* KDevDesignerPartFactory::createPartObject( TQWidget *parentWidget, const char *widgetName,
|
|
TQObject *parent, const char *name,
|
|
const char *classname, const TQStringList &args )
|
|
{
|
|
// Create an instance of our Part
|
|
KDevDesignerPart* obj = new KDevDesignerPart( parentWidget, widgetName, parent, name, args );
|
|
|
|
// See if we are to be read-write or not
|
|
if (TQCString(classname) == "KParts::ReadOnlyPart")
|
|
obj->setReadWrite(false);
|
|
|
|
return obj;
|
|
}
|
|
|
|
KInstance* KDevDesignerPartFactory::instance()
|
|
{
|
|
if( !s_instance )
|
|
{
|
|
s_about = new KAboutData("kdevdesignerpart", I18N_NOOP("KDevDesignerPart"), "0.1");
|
|
s_about->addAuthor("Alexander Dymo", 0, "cloudtemple@mksat.net");
|
|
s_about->addAuthor("Trolltech AS", 0, "info@trolltech.com");
|
|
s_instance = new KInstance(s_about);
|
|
}
|
|
return s_instance;
|
|
}
|
|
|
|
extern "C"
|
|
{
|
|
void* init_libkdevdesignerpart()
|
|
{
|
|
return new KDevDesignerPartFactory;
|
|
}
|
|
}
|
|
|
|
//actions
|
|
|
|
void KDevDesignerPart::fileNew( )
|
|
{
|
|
if (!m_widget->actionNewFile)
|
|
{
|
|
qWarning("wrong m_widget->actionNewFile");
|
|
return;
|
|
}
|
|
m_widget->actionNewFile->activate();
|
|
}
|
|
|
|
void KDevDesignerPart::fileOpen()
|
|
{
|
|
m_widget->fileOpen();
|
|
}
|
|
|
|
void KDevDesignerPart::fileSaveAs()
|
|
{
|
|
m_widget->actionFileSaveAs->activate();
|
|
}
|
|
|
|
void KDevDesignerPart::fileClose( )
|
|
{
|
|
m_widget->actionFileClose->activate();
|
|
}
|
|
|
|
void KDevDesignerPart::fileCreateTemplate( )
|
|
{
|
|
m_widget->fileCreateTemplate();
|
|
}
|
|
|
|
void KDevDesignerPart::editUndo( )
|
|
{
|
|
m_widget->actionEditUndo->activate();
|
|
}
|
|
|
|
void KDevDesignerPart::editRedo( )
|
|
{
|
|
m_widget->actionEditRedo->activate();
|
|
}
|
|
|
|
void KDevDesignerPart::editCut( )
|
|
{
|
|
m_widget->actionEditCut->activate();
|
|
}
|
|
|
|
void KDevDesignerPart::editPaste( )
|
|
{
|
|
m_widget->actionEditPaste->activate();
|
|
}
|
|
|
|
void KDevDesignerPart::editCopy( )
|
|
{
|
|
m_widget->actionEditCopy->activate();
|
|
}
|
|
|
|
void KDevDesignerPart::editDelete( )
|
|
{
|
|
m_widget->actionEditDelete->activate();
|
|
}
|
|
|
|
void KDevDesignerPart::editSelectAll( )
|
|
{
|
|
m_widget->actionEditSelectAll->activate();
|
|
}
|
|
|
|
void KDevDesignerPart::editAccels( )
|
|
{
|
|
m_widget->actionEditAccels->activate();
|
|
}
|
|
|
|
void KDevDesignerPart::editFunctions( )
|
|
{
|
|
m_widget->actionEditFunctions->activate();
|
|
}
|
|
|
|
void KDevDesignerPart::editConnections( )
|
|
{
|
|
m_widget->actionEditConnections->activate();
|
|
}
|
|
|
|
void KDevDesignerPart::editFormSettings( )
|
|
{
|
|
m_widget->actionEditFormSettings->activate();
|
|
}
|
|
|
|
void KDevDesignerPart::editPreferences( )
|
|
{
|
|
m_widget->actionEditPreferences->activate();
|
|
}
|
|
|
|
void KDevDesignerPart::projectAddFile( )
|
|
{
|
|
m_widget->actionProjectAddFile->activate();
|
|
}
|
|
|
|
void KDevDesignerPart::projectImageCollection( )
|
|
{
|
|
m_widget->actionEditPixmapCollection->activate();
|
|
}
|
|
|
|
void KDevDesignerPart::projectDatabaseCollections( )
|
|
{
|
|
m_widget->actionEditDatabaseConnections->activate();
|
|
}
|
|
|
|
void KDevDesignerPart::projectSettings( )
|
|
{
|
|
m_widget->actionEditProjectSettings->activate();
|
|
}
|
|
|
|
void KDevDesignerPart::toolsConfigureToolbox( )
|
|
{
|
|
m_widget->toolsConfigure();
|
|
}
|
|
|
|
void KDevDesignerPart::layoutAdjustSize( )
|
|
{
|
|
m_widget->actionEditAdjustSize->activate();
|
|
}
|
|
|
|
void KDevDesignerPart::layoutHLayout( )
|
|
{
|
|
m_widget->actionEditHLayout->activate();
|
|
}
|
|
|
|
void KDevDesignerPart::layoutVLayout( )
|
|
{
|
|
m_widget->actionEditVLayout->activate();
|
|
}
|
|
|
|
void KDevDesignerPart::layoutGridLayout( )
|
|
{
|
|
m_widget->actionEditGridLayout->activate();
|
|
}
|
|
|
|
void KDevDesignerPart::layoutSplitHLayout( )
|
|
{
|
|
m_widget->actionEditSplitHorizontal->activate();
|
|
}
|
|
|
|
void KDevDesignerPart::layoutSplitVLayout( )
|
|
{
|
|
m_widget->actionEditSplitVertical->activate();
|
|
}
|
|
|
|
void KDevDesignerPart::layoutBreak( )
|
|
{
|
|
m_widget->actionEditBreakLayout->activate();
|
|
}
|
|
|
|
void KDevDesignerPart::windowPreview( )
|
|
{
|
|
m_widget->actionPreview->activate();
|
|
}
|
|
|
|
void KDevDesignerPart::windowNext( )
|
|
{
|
|
m_widget->actionWindowNext->activate();
|
|
}
|
|
|
|
void KDevDesignerPart::windowPrev( )
|
|
{
|
|
m_widget->actionWindowPrevious->activate();
|
|
}
|
|
|
|
void KDevDesignerPart::statusMessage( const TQString & msg )
|
|
{
|
|
emit setStatusBarText(msg);
|
|
}
|
|
|
|
void KDevDesignerPart::setToggleActionChecked( bool b)
|
|
{
|
|
if (!sender())
|
|
return;
|
|
const TQAction *action = dynamic_cast<const TQAction*>(sender());
|
|
if (!action)
|
|
return;
|
|
if (b)
|
|
{
|
|
if (action == m_widget->actionPointerTool)
|
|
pointerAction->setChecked(true);
|
|
return;
|
|
}
|
|
KRadioAction *kaction = m_actionMap[action];
|
|
if (!kaction)
|
|
return;
|
|
// kdDebug() << "untoggle action: " << kaction->text() << endl;
|
|
kaction->blockSignals(true);
|
|
kaction->setChecked(b);
|
|
kaction->blockSignals(false);
|
|
}
|
|
|
|
void KDevDesignerPart::setToggleActionOn( bool b )
|
|
{
|
|
if (!sender())
|
|
return;
|
|
const KRadioAction *action = dynamic_cast<const KRadioAction *>(sender());
|
|
if (!action)
|
|
return;
|
|
// kdDebug() << (b?TQString("toggle"):TQString("untoggle")) << " action: " << action->text() << endl;
|
|
TQAction *qaction = m_actionMap2[action];
|
|
if (!qaction)
|
|
return;
|
|
disconnect(qaction, TQT_SIGNAL(toggled(bool )), this, TQT_SLOT(setToggleActionChecked(bool )));
|
|
qaction->setOn(b);
|
|
connect(qaction, TQT_SIGNAL(toggled(bool )), this, TQT_SLOT(setToggleActionChecked(bool )));
|
|
}
|
|
|
|
void KDevDesignerPart::openProject( const TQString & // projectFile
|
|
)
|
|
{
|
|
//TODO: implement
|
|
return;
|
|
}
|
|
|
|
KInterfaceDesigner::DesignerType KDevDesignerPart::designerType( )
|
|
{
|
|
return KInterfaceDesigner::TQtDesigner;
|
|
}
|
|
|
|
void KDevDesignerPart::emitAddedFunction( const TQString & form, KInterfaceDesigner::Function func )
|
|
{
|
|
kdDebug() << "KDevDesignerPart::emitAddedFunction: form " << form << ", function: " << func.function << endl;
|
|
emit addedFunction(designerType(), form, func);
|
|
}
|
|
|
|
void KDevDesignerPart::emitRemovedFunction( const TQString & form, KInterfaceDesigner::Function func )
|
|
{
|
|
kdDebug() << "KDevDesignerPart::emitRemovedFunction: form " << form << ", function: " << func.function << endl;
|
|
emit removedFunction(designerType(), form, func);
|
|
}
|
|
|
|
void KDevDesignerPart::emitEditedFunction( const TQString & form, KInterfaceDesigner::Function oldFunc, KInterfaceDesigner::Function func )
|
|
{
|
|
kdDebug() << "KDevDesignerPart::emitEditedFunction: form " << form
|
|
<< ", old function: " << oldFunc.function
|
|
<< ", function: " << func.function << endl;
|
|
|
|
// m_widget->formWindow()->clearSelection(false);
|
|
emit editedFunction(designerType(), form, oldFunc, func);
|
|
}
|
|
|
|
void KDevDesignerPart::emitEditFunction(const TQString &formName, const TQString &functionName)
|
|
{
|
|
kdDebug() << "KDevDesignerPart::emitEditedFunction: form " << formName
|
|
<< ", function: " << functionName << endl;
|
|
emit editFunction(designerType(), formName, functionName);
|
|
}
|
|
|
|
void KDevDesignerPart::formModified(bool b)
|
|
{
|
|
kdDebug() << "KDevDesignerPart::formModified " << b << endl;
|
|
setModified(b);
|
|
}
|
|
|
|
void KDevDesignerPart::emitEditSource(const TQString &formName)
|
|
{
|
|
emit editSource(designerType(), formName);
|
|
}
|
|
|
|
void KDevDesignerPart::emitNewStatus(const TQString &formName, int status)
|
|
{
|
|
emit newStatus(formName, status);
|
|
}
|
|
|
|
void KDevDesignerPart::toolsEditCustomWidgets( )
|
|
{
|
|
m_widget->toolsCustomWidget();
|
|
}
|
|
|
|
#include "kdevdesigner_part.moc"
|