Kaydet (Commit) 1fccdde1 authored tarafından Caolán McNamara's avatar Caolán McNamara

weld DBMySQLNativeSettings

Change-Id: I0c4f27e02f9dd6c7bb42ffe49043e98e043d9084
Reviewed-on: https://gerrit.libreoffice.org/62292
Tested-by: Jenkins
Reviewed-by: 's avatarCaolán McNamara <caolanm@redhat.com>
Tested-by: 's avatarCaolán McNamara <caolanm@redhat.com>
üst a8165c11
...@@ -305,6 +305,175 @@ namespace dbaui ...@@ -305,6 +305,175 @@ namespace dbaui
return true; return true;
} }
// MySQLNativeSettings
DBMySQLNativeSettings::DBMySQLNativeSettings(weld::Widget* pParent, const Link<void*,void>& rControlModificationLink)
: m_xBuilder(Application::CreateBuilder(pParent, "dbaccess/ui/mysqlnativesettings.ui"))
, m_xContainer(m_xBuilder->weld_widget("MysqlNativeSettings"))
, m_xDatabaseNameLabel(m_xBuilder->weld_label("dbnamelabel"))
, m_xDatabaseName(m_xBuilder->weld_entry("dbname"))
, m_xHostPortRadio(m_xBuilder->weld_radio_button("hostport"))
, m_xSocketRadio(m_xBuilder->weld_radio_button("socketlabel"))
, m_xNamedPipeRadio(m_xBuilder->weld_radio_button("namedpipelabel"))
, m_xHostNameLabel(m_xBuilder->weld_label("serverlabel"))
, m_xHostName(m_xBuilder->weld_entry("server"))
, m_xPortLabel(m_xBuilder->weld_label("portlabel"))
, m_xPort(m_xBuilder->weld_spin_button("port"))
, m_xDefaultPort(m_xBuilder->weld_label("defaultport"))
, m_xSocket(m_xBuilder->weld_entry("socket"))
, m_xNamedPipe(m_xBuilder->weld_entry("namedpipe"))
, m_aControlModificationLink(rControlModificationLink)
{
m_xDatabaseName->connect_changed( LINK(this, DBMySQLNativeSettings, EditModifyHdl) );
m_xHostName->connect_changed( LINK(this, DBMySQLNativeSettings, EditModifyHdl) );
m_xPort->connect_value_changed( LINK(this, DBMySQLNativeSettings, SpinModifyHdl) );
m_xSocket->connect_changed( LINK(this, DBMySQLNativeSettings, EditModifyHdl) );
m_xNamedPipe->connect_changed( LINK(this, DBMySQLNativeSettings, EditModifyHdl) );
m_xSocketRadio->connect_toggled( LINK(this, DBMySQLNativeSettings, RadioToggleHdl) );
m_xNamedPipeRadio->connect_toggled( LINK(this, DBMySQLNativeSettings, RadioToggleHdl) );
m_xHostPortRadio->connect_toggled( LINK(this, DBMySQLNativeSettings, RadioToggleHdl) );
// sockets are available on Unix systems only, named pipes only on Windows
#ifdef UNX
m_xNamedPipeRadio->hide();
m_xNamedPipe->hide();
#else
m_xSocketRadio->hide();
m_xSocket->hide();
#endif
m_xContainer->show();
}
IMPL_LINK(DBMySQLNativeSettings, RadioToggleHdl, weld::ToggleButton&, rRadioButton, void)
{
m_aControlModificationLink.Call(&rRadioButton);
const bool bHostPortRadio = m_xHostPortRadio->get_active();
m_xHostNameLabel->set_sensitive(bHostPortRadio);
m_xHostName->set_sensitive(bHostPortRadio);
m_xPortLabel->set_sensitive(bHostPortRadio);
m_xPort->set_sensitive(bHostPortRadio);
m_xDefaultPort->set_sensitive(bHostPortRadio);
m_xSocket->set_sensitive(m_xSocketRadio->get_active());
m_xNamedPipe->set_sensitive(m_xNamedPipeRadio->get_active());
}
IMPL_LINK(DBMySQLNativeSettings, EditModifyHdl, weld::Entry&, rEdit, void)
{
m_aControlModificationLink.Call(&rEdit);
}
IMPL_LINK(DBMySQLNativeSettings, SpinModifyHdl, weld::SpinButton&, rEdit, void)
{
m_aControlModificationLink.Call(&rEdit);
}
void DBMySQLNativeSettings::fillControls( std::vector< std::unique_ptr<ISaveValueWrapper> >& _rControlList )
{
_rControlList.emplace_back(new OSaveValueWidgetWrapper<weld::Entry>(m_xDatabaseName.get()));
_rControlList.emplace_back(new OSaveValueWidgetWrapper<weld::Entry>(m_xHostName.get()));
_rControlList.emplace_back(new OSaveValueWidgetWrapper<weld::Entry>(m_xPort.get()));
_rControlList.emplace_back(new OSaveValueWidgetWrapper<weld::Entry>(m_xSocket.get()));
_rControlList.emplace_back(new OSaveValueWidgetWrapper<weld::Entry>(m_xNamedPipe.get()));
}
void DBMySQLNativeSettings::fillWindows( std::vector< std::unique_ptr<ISaveValueWrapper> >& _rControlList )
{
_rControlList.emplace_back( new ODisableWidgetWrapper<weld::Label>( m_xDatabaseNameLabel.get() ) );
_rControlList.emplace_back( new ODisableWidgetWrapper<weld::Label>( m_xHostNameLabel.get() ) );
_rControlList.emplace_back( new ODisableWidgetWrapper<weld::Label>( m_xPortLabel.get() ) );
_rControlList.emplace_back( new ODisableWidgetWrapper<weld::Label>( m_xDefaultPort.get() ) );
_rControlList.emplace_back( new ODisableWidgetWrapper<weld::RadioButton>( m_xSocketRadio.get() ) );
_rControlList.emplace_back( new ODisableWidgetWrapper<weld::RadioButton>( m_xNamedPipeRadio.get() ) );
}
bool DBMySQLNativeSettings::FillItemSet( SfxItemSet* _rSet )
{
bool bChangedSomething = false;
OGenericAdministrationPage::fillString( *_rSet, m_xHostName.get(), DSID_CONN_HOSTNAME, bChangedSomething );
OGenericAdministrationPage::fillString( *_rSet, m_xDatabaseName.get(), DSID_DATABASENAME, bChangedSomething );
OGenericAdministrationPage::fillInt32 ( *_rSet, m_xPort.get(), DSID_MYSQL_PORTNUMBER, bChangedSomething );
#ifdef UNX
OGenericAdministrationPage::fillString( *_rSet, m_xSocket.get(), DSID_CONN_SOCKET, bChangedSomething );
#else
OGenericAdministrationPage::fillString( *_rSet, m_xNamedPipe.get(), DSID_NAMED_PIPE, bChangedSomething );
#endif
return bChangedSomething;
}
void DBMySQLNativeSettings::implInitControls(const SfxItemSet& _rSet )
{
const SfxBoolItem* pInvalid = _rSet.GetItem<SfxBoolItem>(DSID_INVALID_SELECTION);
bool bValid = !pInvalid || !pInvalid->GetValue();
if ( !bValid )
return;
const SfxStringItem* pDatabaseName = _rSet.GetItem<SfxStringItem>(DSID_DATABASENAME);
const SfxStringItem* pHostName = _rSet.GetItem<SfxStringItem>(DSID_CONN_HOSTNAME);
const SfxInt32Item* pPortNumber = _rSet.GetItem<SfxInt32Item>(DSID_MYSQL_PORTNUMBER);
const SfxStringItem* pSocket = _rSet.GetItem<SfxStringItem>(DSID_CONN_SOCKET);
const SfxStringItem* pNamedPipe = _rSet.GetItem<SfxStringItem>(DSID_NAMED_PIPE);
m_xDatabaseName->set_text( pDatabaseName->GetValue() );
m_xDatabaseName->save_value();
m_xHostName->set_text( pHostName->GetValue() );
m_xHostName->save_value();
m_xPort->set_value( pPortNumber->GetValue() );
m_xPort->save_value();
m_xSocket->set_text( pSocket->GetValue() );
m_xSocket->save_value();
m_xNamedPipe->set_text( pNamedPipe->GetValue() );
m_xNamedPipe->save_value();
// if a socket (on Unix) or a pipe name (on Windows) is given, this is preferred over
// the port
#ifdef UNX
weld::RadioButton& rSocketPipeRadio = *m_xSocketRadio;
const SfxStringItem* pSocketPipeItem = pSocket;
#else
weld::RadioButton& rSocketPipeRadio = *m_xNamedPipeRadio;
const SfxStringItem* pSocketPipeItem = pNamedPipe;
#endif
const OUString& rSocketPipe( pSocketPipeItem->GetValue() );
if (!rSocketPipe.isEmpty())
rSocketPipeRadio.set_active(true);
else
m_xHostPortRadio->set_active(true);
}
bool DBMySQLNativeSettings::canAdvance() const
{
if (m_xDatabaseName->get_text().isEmpty())
return false;
if ( m_xHostPortRadio->get_active()
&& ( ( m_xHostName->get_text().isEmpty() )
|| ( m_xPort->get_text().isEmpty() )
)
)
return false;
#ifdef UNX
if ( ( m_xSocketRadio->get_active() )
&& ( m_xSocket->get_text().isEmpty() )
)
#else
if ( ( m_xNamedPipeRadio->get_active() )
&& ( m_xNamedPipe->get_text().isEmpty() )
)
#endif
return false;
return true;
}
} // namespace dbaui } // namespace dbaui
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
...@@ -66,6 +66,39 @@ namespace dbaui ...@@ -66,6 +66,39 @@ namespace dbaui
bool canAdvance() const; bool canAdvance() const;
}; };
class DBMySQLNativeSettings
{
private:
std::unique_ptr<weld::Builder> m_xBuilder;
std::unique_ptr<weld::Widget> m_xContainer;
std::unique_ptr<weld::Label> m_xDatabaseNameLabel;
std::unique_ptr<weld::Entry> m_xDatabaseName;
std::unique_ptr<weld::RadioButton> m_xHostPortRadio;
std::unique_ptr<weld::RadioButton> m_xSocketRadio;
std::unique_ptr<weld::RadioButton> m_xNamedPipeRadio;
std::unique_ptr<weld::Label> m_xHostNameLabel;
std::unique_ptr<weld::Entry> m_xHostName;
std::unique_ptr<weld::Label> m_xPortLabel;
std::unique_ptr<weld::SpinButton> m_xPort;
std::unique_ptr<weld::Label> m_xDefaultPort;
std::unique_ptr<weld::Entry> m_xSocket;
std::unique_ptr<weld::Entry> m_xNamedPipe;
Link<void*,void> m_aControlModificationLink;
DECL_LINK(RadioToggleHdl, weld::ToggleButton&, void);
DECL_LINK(SpinModifyHdl, weld::SpinButton&, void);
DECL_LINK(EditModifyHdl, weld::Entry&, void);
public:
DBMySQLNativeSettings(weld::Widget* pParent, const Link<void*,void>& rControlModificationLink);
void fillControls( std::vector< std::unique_ptr<ISaveValueWrapper> >& _rControlList );
void fillWindows( std::vector< std::unique_ptr<ISaveValueWrapper> >& _rControlList );
bool FillItemSet( SfxItemSet* rCoreAttrs );
void implInitControls( const SfxItemSet& _rSet );
bool canAdvance() const;
};
} // namespace dbaui } // namespace dbaui
#endif // INCLUDED_DBACCESS_SOURCE_UI_DLG_ADMINCONTROLS_HXX #endif // INCLUDED_DBACCESS_SOURCE_UI_DLG_ADMINCONTROLS_HXX
......
...@@ -627,19 +627,17 @@ namespace dbaui ...@@ -627,19 +627,17 @@ namespace dbaui
} }
// MySQLNativePage // MySQLNativePage
MySQLNativePage::MySQLNativePage( vcl::Window* pParent, const SfxItemSet& _rCoreAttrs ) MySQLNativePage::MySQLNativePage(TabPageParent pParent, const SfxItemSet& rCoreAttrs)
:OCommonBehaviourTabPage(pParent, "MysqlNativePage", "dbaccess/ui/mysqlnativepage.ui", _rCoreAttrs, OCommonBehaviourTabPageFlags::UseCharset ) : DBOCommonBehaviourTabPage(pParent, "dbaccess/ui/mysqlnativepage.ui", "MysqlNativePage", rCoreAttrs, OCommonBehaviourTabPageFlags::UseCharset)
,m_aMySQLSettings ( VclPtr<MySQLNativeSettings>::Create(*get<VclVBox>("MySQLSettingsContainer"), LINK(this,OGenericAdministrationPage,OnControlModified)) ) , m_xMySQLSettingsContainer(m_xBuilder->weld_widget("MySQLSettingsContainer"))
, m_aMySQLSettings(m_xMySQLSettingsContainer.get(), LINK(this,OGenericAdministrationPage,OnControlModified))
, m_xSeparator1(m_xBuilder->weld_label("connectionheader"))
, m_xSeparator2(m_xBuilder->weld_label("userheader"))
, m_xUserNameLabel(m_xBuilder->weld_label("usernamelabel"))
, m_xUserName(m_xBuilder->weld_entry("username"))
, m_xPasswordRequired(m_xBuilder->weld_check_button("passwordrequired"))
{ {
get(m_pSeparator1, "connectionheader"); m_xUserName->connect_changed(LINK(this,OGenericAdministrationPage,OnControlEntryModifyHdl));
get(m_pSeparator2, "userheader");
get(m_pUserNameLabel, "usernamelabel");
get(m_pUserName, "username");
get(m_pPasswordRequired, "passwordrequired");
m_pUserName->SetModifyHdl(LINK(this,OGenericAdministrationPage,OnControlEditModifyHdl));
m_aMySQLSettings->Show();
} }
MySQLNativePage::~MySQLNativePage() MySQLNativePage::~MySQLNativePage()
...@@ -647,48 +645,38 @@ namespace dbaui ...@@ -647,48 +645,38 @@ namespace dbaui
disposeOnce(); disposeOnce();
} }
void MySQLNativePage::dispose()
{
m_aMySQLSettings.disposeAndClear();
m_pSeparator1.clear();
m_pSeparator2.clear();
m_pUserNameLabel.clear();
m_pUserName.clear();
m_pPasswordRequired.clear();
OCommonBehaviourTabPage::dispose();
}
void MySQLNativePage::fillControls(std::vector< std::unique_ptr<ISaveValueWrapper> >& _rControlList) void MySQLNativePage::fillControls(std::vector< std::unique_ptr<ISaveValueWrapper> >& _rControlList)
{ {
OCommonBehaviourTabPage::fillControls( _rControlList ); DBOCommonBehaviourTabPage::fillControls( _rControlList );
m_aMySQLSettings->fillControls( _rControlList ); m_aMySQLSettings.fillControls( _rControlList );
_rControlList.emplace_back(new OSaveValueWrapper<Edit>(m_pUserName)); _rControlList.emplace_back(new OSaveValueWidgetWrapper<weld::Entry>(m_xUserName.get()));
_rControlList.emplace_back(new OSaveValueWrapper<CheckBox>(m_pPasswordRequired)); _rControlList.emplace_back(new OSaveValueWidgetWrapper<weld::CheckButton>(m_xPasswordRequired.get()));
} }
void MySQLNativePage::fillWindows(std::vector< std::unique_ptr<ISaveValueWrapper> >& _rControlList) void MySQLNativePage::fillWindows(std::vector< std::unique_ptr<ISaveValueWrapper> >& _rControlList)
{ {
OCommonBehaviourTabPage::fillWindows( _rControlList ); DBOCommonBehaviourTabPage::fillWindows( _rControlList );
m_aMySQLSettings->fillWindows( _rControlList); m_aMySQLSettings.fillWindows( _rControlList);
_rControlList.emplace_back(new ODisableWrapper<FixedText>(m_pSeparator1)); _rControlList.emplace_back(new ODisableWidgetWrapper<weld::Label>(m_xSeparator1.get()));
_rControlList.emplace_back(new ODisableWrapper<FixedText>(m_pSeparator2)); _rControlList.emplace_back(new ODisableWidgetWrapper<weld::Label>(m_xSeparator2.get()));
_rControlList.emplace_back(new ODisableWrapper<FixedText>(m_pUserNameLabel)); _rControlList.emplace_back(new ODisableWidgetWrapper<weld::Label>(m_xUserNameLabel.get()));
} }
bool MySQLNativePage::FillItemSet( SfxItemSet* _rSet ) bool MySQLNativePage::FillItemSet( SfxItemSet* _rSet )
{ {
bool bChangedSomething = OCommonBehaviourTabPage::FillItemSet( _rSet ); bool bChangedSomething = DBOCommonBehaviourTabPage::FillItemSet( _rSet );
bChangedSomething |= m_aMySQLSettings->FillItemSet( _rSet ); bChangedSomething |= m_aMySQLSettings.FillItemSet( _rSet );
if ( m_pUserName->IsValueChangedFromSaved() ) if (m_xUserName->get_value_changed_from_saved())
{ {
_rSet->Put( SfxStringItem( DSID_USER, m_pUserName->GetText() ) ); _rSet->Put( SfxStringItem( DSID_USER, m_xUserName->get_text() ) );
_rSet->Put( SfxStringItem( DSID_PASSWORD, OUString())); _rSet->Put( SfxStringItem( DSID_PASSWORD, OUString()));
bChangedSomething = true; bChangedSomething = true;
} }
fillBool(*_rSet,m_pPasswordRequired,DSID_PASSWORDREQUIRED,bChangedSomething); fillBool(*_rSet,m_xPasswordRequired.get(),DSID_PASSWORDREQUIRED,false,bChangedSomething);
return bChangedSomething; return bChangedSomething;
} }
...@@ -698,19 +686,19 @@ namespace dbaui ...@@ -698,19 +686,19 @@ namespace dbaui
bool bValid, bReadonly; bool bValid, bReadonly;
getFlags(_rSet, bValid, bReadonly); getFlags(_rSet, bValid, bReadonly);
m_aMySQLSettings->implInitControls( _rSet ); m_aMySQLSettings.implInitControls( _rSet );
const SfxStringItem* pUidItem = _rSet.GetItem<SfxStringItem>(DSID_USER); const SfxStringItem* pUidItem = _rSet.GetItem<SfxStringItem>(DSID_USER);
const SfxBoolItem* pAllowEmptyPwd = _rSet.GetItem<SfxBoolItem>(DSID_PASSWORDREQUIRED); const SfxBoolItem* pAllowEmptyPwd = _rSet.GetItem<SfxBoolItem>(DSID_PASSWORDREQUIRED);
if ( bValid ) if ( bValid )
{ {
m_pUserName->SetText(pUidItem->GetValue()); m_xUserName->set_text(pUidItem->GetValue());
m_pUserName->ClearModifyFlag(); m_xUserName->save_value();
m_pPasswordRequired->Check(pAllowEmptyPwd->GetValue()); m_xPasswordRequired->set_active(pAllowEmptyPwd->GetValue());
} }
OCommonBehaviourTabPage::implInitControls(_rSet, _bSaveValue); DBOCommonBehaviourTabPage::implInitControls(_rSet, _bSaveValue);
} }
VclPtr<SfxTabPage> ODriversSettings::CreateMySQLJDBC( TabPageParent pParent, const SfxItemSet* _rAttrSet ) VclPtr<SfxTabPage> ODriversSettings::CreateMySQLJDBC( TabPageParent pParent, const SfxItemSet* _rAttrSet )
...@@ -718,9 +706,9 @@ namespace dbaui ...@@ -718,9 +706,9 @@ namespace dbaui
return VclPtr<OGeneralSpecialJDBCDetailsPage>::Create(pParent, *_rAttrSet,DSID_MYSQL_PORTNUMBER); return VclPtr<OGeneralSpecialJDBCDetailsPage>::Create(pParent, *_rAttrSet,DSID_MYSQL_PORTNUMBER);
} }
VclPtr<SfxTabPage> ODriversSettings::CreateMySQLNATIVE( TabPageParent pParent, const SfxItemSet* _rAttrSet ) VclPtr<SfxTabPage> ODriversSettings::CreateMySQLNATIVE(TabPageParent pParent, const SfxItemSet* pAttrSet)
{ {
return VclPtr<MySQLNativePage>::Create( pParent.pParent, *_rAttrSet ); return VclPtr<MySQLNativePage>::Create(pParent, *pAttrSet);
} }
VclPtr<SfxTabPage> ODriversSettings::CreateOracleJDBC(TabPageParent pParent, const SfxItemSet* _rAttrSet) VclPtr<SfxTabPage> ODriversSettings::CreateOracleJDBC(TabPageParent pParent, const SfxItemSet* _rAttrSet)
......
...@@ -233,22 +233,20 @@ namespace dbaui ...@@ -233,22 +233,20 @@ namespace dbaui
}; };
// MySQLNativePage // MySQLNativePage
class MySQLNativePage : public OCommonBehaviourTabPage class MySQLNativePage : public DBOCommonBehaviourTabPage
{ {
public: public:
MySQLNativePage( vcl::Window* pParent, MySQLNativePage(TabPageParent pParent, const SfxItemSet& rCoreAttrs);
const SfxItemSet& _rCoreAttrs );
virtual ~MySQLNativePage() override; virtual ~MySQLNativePage() override;
virtual void dispose() override;
private: private:
VclPtr<FixedText> m_pSeparator1; std::unique_ptr<weld::Widget> m_xMySQLSettingsContainer;
VclPtr<MySQLNativeSettings> m_aMySQLSettings; DBMySQLNativeSettings m_aMySQLSettings;
std::unique_ptr<weld::Label> m_xSeparator1;
VclPtr<FixedText> m_pSeparator2; std::unique_ptr<weld::Label> m_xSeparator2;
VclPtr<FixedText> m_pUserNameLabel; std::unique_ptr<weld::Label> m_xUserNameLabel;
VclPtr<Edit> m_pUserName; std::unique_ptr<weld::Entry> m_xUserName;
VclPtr<CheckBox> m_pPasswordRequired; std::unique_ptr<weld::CheckButton> m_xPasswordRequired;
protected: protected:
virtual bool FillItemSet( SfxItemSet* _rCoreAttrs ) override; virtual bool FillItemSet( SfxItemSet* _rCoreAttrs ) override;
......
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!-- Generated with glade 3.18.3 --> <!-- Generated with glade 3.22.1 -->
<interface domain="dba"> <interface domain="dba">
<requires lib="gtk+" version="3.18"/> <requires lib="gtk+" version="3.18"/>
<requires lib="LibreOffice" version="1.0"/>
<object class="GtkBox" id="MysqlNativePage"> <object class="GtkBox" id="MysqlNativePage">
<property name="visible">True</property> <property name="visible">True</property>
<property name="can_focus">False</property> <property name="can_focus">False</property>
...@@ -12,7 +11,7 @@ ...@@ -12,7 +11,7 @@
<property name="orientation">vertical</property> <property name="orientation">vertical</property>
<property name="spacing">12</property> <property name="spacing">12</property>
<child> <child>
<object class="GtkFrame" id="frame1"> <object class="GtkFrame" id="connectionframe">
<property name="visible">True</property> <property name="visible">True</property>
<property name="can_focus">False</property> <property name="can_focus">False</property>
<property name="hexpand">True</property> <property name="hexpand">True</property>
...@@ -59,7 +58,7 @@ ...@@ -59,7 +58,7 @@
</packing> </packing>
</child> </child>
<child> <child>
<object class="GtkFrame" id="frame2"> <object class="GtkFrame" id="userframe">
<property name="visible">True</property> <property name="visible">True</property>
<property name="can_focus">False</property> <property name="can_focus">False</property>
<property name="hexpand">True</property> <property name="hexpand">True</property>
...@@ -86,10 +85,10 @@ ...@@ -86,10 +85,10 @@
<object class="GtkLabel" id="usernamelabel"> <object class="GtkLabel" id="usernamelabel">
<property name="visible">True</property> <property name="visible">True</property>
<property name="can_focus">False</property> <property name="can_focus">False</property>
<property name="xalign">1</property>
<property name="label" translatable="yes" context="mysqlnativepage|usernamelabel">_User name:</property> <property name="label" translatable="yes" context="mysqlnativepage|usernamelabel">_User name:</property>
<property name="use_underline">True</property> <property name="use_underline">True</property>
<property name="mnemonic_widget">username</property> <property name="mnemonic_widget">username</property>
<property name="xalign">1</property>
</object> </object>
<packing> <packing>
<property name="left_attach">0</property> <property name="left_attach">0</property>
...@@ -101,6 +100,7 @@ ...@@ -101,6 +100,7 @@
<property name="visible">True</property> <property name="visible">True</property>
<property name="can_focus">True</property> <property name="can_focus">True</property>
<property name="hexpand">True</property> <property name="hexpand">True</property>
<property name="activates_default">True</property>
</object> </object>
<packing> <packing>
<property name="left_attach">1</property> <property name="left_attach">1</property>
...@@ -147,7 +147,7 @@ ...@@ -147,7 +147,7 @@
</packing> </packing>
</child> </child>
<child> <child>
<object class="GtkFrame" id="frame3"> <object class="GtkFrame" id="charsetframe">
<property name="visible">True</property> <property name="visible">True</property>
<property name="can_focus">False</property> <property name="can_focus">False</property>
<property name="hexpand">True</property> <property name="hexpand">True</property>
...@@ -171,10 +171,10 @@ ...@@ -171,10 +171,10 @@
<object class="GtkLabel" id="charsetlabel"> <object class="GtkLabel" id="charsetlabel">
<property name="visible">True</property> <property name="visible">True</property>
<property name="can_focus">False</property> <property name="can_focus">False</property>
<property name="xalign">1</property>
<property name="label" translatable="yes" context="mysqlnativepage|charsetlabel">_Character set:</property> <property name="label" translatable="yes" context="mysqlnativepage|charsetlabel">_Character set:</property>
<property name="use_underline">True</property> <property name="use_underline">True</property>
<property name="mnemonic_widget">charset</property> <property name="mnemonic_widget">charset</property>
<property name="xalign">1</property>
</object> </object>
<packing> <packing>
<property name="expand">False</property> <property name="expand">False</property>
...@@ -183,7 +183,7 @@ ...@@ -183,7 +183,7 @@
</packing> </packing>
</child> </child>
<child> <child>
<object class="dbulo-CharSetListBox" id="charset"> <object class="GtkComboBoxText" id="charset">
<property name="visible">True</property> <property name="visible">True</property>
<property name="can_focus">False</property> <property name="can_focus">False</property>
<property name="hexpand">True</property> <property name="hexpand">True</property>
......
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!-- Generated with glade 3.18.3 --> <!-- Generated with glade 3.22.1 -->
<interface domain="dba"> <interface domain="dba">
<requires lib="gtk+" version="3.18"/> <requires lib="gtk+" version="3.18"/>
<object class="GtkAdjustment" id="adjustment1">
<property name="upper">65535</property>
<property name="step_increment">1</property>
<property name="page_increment">10</property>
</object>
<object class="GtkBox" id="MysqlNativeSettings"> <object class="GtkBox" id="MysqlNativeSettings">
<property name="visible">True</property> <property name="visible">True</property>
<property name="can_focus">False</property> <property name="can_focus">False</property>
...@@ -21,10 +26,10 @@ ...@@ -21,10 +26,10 @@
<property name="visible">True</property> <property name="visible">True</property>
<property name="can_focus">False</property> <property name="can_focus">False</property>
<property name="halign">start</property> <property name="halign">start</property>
<property name="xalign">0</property>
<property name="label" translatable="yes" context="mysqlnativesettings|dbnamelabel">_Database name:</property> <property name="label" translatable="yes" context="mysqlnativesettings|dbnamelabel">_Database name:</property>
<property name="use_underline">True</property> <property name="use_underline">True</property>
<property name="mnemonic_widget">dbname</property> <property name="mnemonic_widget">dbname</property>
<property name="xalign">0</property>
</object> </object>
<packing> <packing>
<property name="expand">False</property> <property name="expand">False</property>
...@@ -37,6 +42,7 @@ ...@@ -37,6 +42,7 @@
<property name="visible">True</property> <property name="visible">True</property>
<property name="can_focus">True</property> <property name="can_focus">True</property>
<property name="hexpand">True</property> <property name="hexpand">True</property>
<property name="activates_default">True</property>
</object> </object>
<packing> <packing>
<property name="expand">False</property> <property name="expand">False</property>
...@@ -90,10 +96,10 @@ ...@@ -90,10 +96,10 @@
<object class="GtkLabel" id="serverlabel"> <object class="GtkLabel" id="serverlabel">
<property name="visible">True</property> <property name="visible">True</property>
<property name="can_focus">False</property> <property name="can_focus">False</property>
<property name="xalign">1</property>
<property name="label" translatable="yes" context="mysqlnativesettings|serverlabel">_Server:</property> <property name="label" translatable="yes" context="mysqlnativesettings|serverlabel">_Server:</property>
<property name="use_underline">True</property> <property name="use_underline">True</property>
<property name="mnemonic_widget">server</property> <property name="mnemonic_widget">server</property>
<property name="xalign">1</property>
</object> </object>
<packing> <packing>
<property name="left_attach">0</property> <property name="left_attach">0</property>
...@@ -104,10 +110,10 @@ ...@@ -104,10 +110,10 @@
<object class="GtkLabel" id="portlabel"> <object class="GtkLabel" id="portlabel">
<property name="visible">True</property> <property name="visible">True</property>
<property name="can_focus">False</property> <property name="can_focus">False</property>
<property name="xalign">1</property>
<property name="label" translatable="yes" context="mysqlnativesettings|portlabel">_Port:</property> <property name="label" translatable="yes" context="mysqlnativesettings|portlabel">_Port:</property>
<property name="use_underline">True</property> <property name="use_underline">True</property>
<property name="mnemonic_widget">port</property> <property name="mnemonic_widget">port</property>
<property name="xalign">1</property>
</object> </object>
<packing> <packing>
<property name="left_attach">0</property> <property name="left_attach">0</property>
...@@ -119,6 +125,7 @@ ...@@ -119,6 +125,7 @@
<property name="visible">True</property> <property name="visible">True</property>
<property name="can_focus">True</property> <property name="can_focus">True</property>
<property name="hexpand">True</property> <property name="hexpand">True</property>
<property name="activates_default">True</property>
</object> </object>
<packing> <packing>
<property name="left_attach">1</property> <property name="left_attach">1</property>
...@@ -131,8 +138,8 @@ ...@@ -131,8 +138,8 @@
<property name="visible">True</property> <property name="visible">True</property>
<property name="can_focus">False</property> <property name="can_focus">False</property>
<property name="halign">start</property> <property name="halign">start</property>
<property name="xalign">0</property>
<property name="label" translatable="yes" context="mysqlnativesettings|defaultport">Default: 3306</property> <property name="label" translatable="yes" context="mysqlnativesettings|defaultport">Default: 3306</property>
<property name="xalign">0</property>
</object> </object>
<packing> <packing>
<property name="left_attach">2</property> <property name="left_attach">2</property>
...@@ -144,6 +151,8 @@ ...@@ -144,6 +151,8 @@
<property name="visible">True</property> <property name="visible">True</property>
<property name="can_focus">True</property> <property name="can_focus">True</property>
<property name="hexpand">True</property> <property name="hexpand">True</property>
<property name="activates_default">True</property>
<property name="adjustment">adjustment1</property>
<property name="numeric">True</property> <property name="numeric">True</property>
</object> </object>
<packing> <packing>
...@@ -194,6 +203,7 @@ ...@@ -194,6 +203,7 @@
<property name="visible">True</property> <property name="visible">True</property>
<property name="can_focus">True</property> <property name="can_focus">True</property>
<property name="hexpand">True</property> <property name="hexpand">True</property>
<property name="activates_default">True</property>
</object> </object>
<packing> <packing>
<property name="left_attach">1</property> <property name="left_attach">1</property>
...@@ -235,6 +245,7 @@ ...@@ -235,6 +245,7 @@
<property name="visible">True</property> <property name="visible">True</property>
<property name="can_focus">True</property> <property name="can_focus">True</property>
<property name="hexpand">True</property> <property name="hexpand">True</property>
<property name="activates_default">True</property>
</object> </object>
<packing> <packing>
<property name="left_attach">1</property> <property name="left_attach">1</property>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment