Commit Graph

396 Commits

Author SHA1 Message Date
54a17dd246 windows: warning 4355 is disabled globally in com_MSC_defs.mk
So there is no need to do this locally, too.

Change-Id: I0fa1d0cd3e077ba0985848a9d2cbb061b123e8ad
2013-10-28 01:02:13 +01:00
8396cce9b5 clean up places accessing the NULL at the of an OUString
There were only a couple of real bugs fixed, but we're a little
bit safer now.
This also fixes the assert and the comment in OUString::operator[]
about this.

Change-Id: Ibe16b5794e0ba7ecd345fa0801586d25b015974c
2013-10-23 13:12:55 +02:00
a7724966ab Bin comments that claim to say why some header is included
They are practically always useless, often misleading or obsolete.

Change-Id: I2d32182a31349c9fb3b982498fd22d93e84c0c0c
2013-10-22 16:56:28 +03:00
66a96c8274 clean up SbiScanner::NextSym() a little, fdo#70319 follow-up
Number recognition was suboptimal and didn't properly resync scan
positions after having detected an error.

Change-Id: I278fdaaf17ed40560785deaaad0e3412a249d90a
2013-10-15 12:52:15 +02:00
b680e35254 Test WNT instead of the vague UNX
Change-Id: Icacdae592f05bcdcf50223d607976d687e182c96
2013-10-12 09:55:48 +03:00
39022b8b7d little String to OUString + documentation
Change-Id: I982e44150fd2909da0571409f16051d79377d7a3
Reviewed-on: https://gerrit.libreoffice.org/6192
Reviewed-by: Thomas Arnhold <thomas@arnhold.org>
Tested-by: Thomas Arnhold <thomas@arnhold.org>
2013-10-10 17:58:31 +00:00
9cff818949 CID#708773 unused pointer value
Change-Id: Ib394a444882f5ffa1e0c5e833d59f4e4985479df
2013-10-07 11:46:59 +01:00
470af978eb CID#707648 uninitialized member
Change-Id: Ib8371710dd6c856b143782ca9c18f4ee76798f0e
2013-10-07 11:46:58 +01:00
3c2983ded9 CID#707646 uninitialized member variables
also CID#707647

Change-Id: I9962bd2417119944a243d8a92711866548248e36
2013-10-07 11:46:58 +01:00
ef53bd8ab2 CID#707643 uninitialized members
Change-Id: I23386c780bf484652a518d907d7dc0cc3c910040
2013-10-07 11:46:58 +01:00
ad7b757a25 'ist' -> 'is' here and there.
Change-Id: I0a463c38214b95582db2c7b3979367255426c14e
2013-10-04 20:27:30 +02:00
ea1e3b77d4 sal_Bool to bool
Change-Id: I16ddbcf100e21d6c05fccbe24faca2932a605902
2013-10-02 10:00:44 +09:00
dbff5bd4cd CID#736166 unlikely out of bounds
Change-Id: I8a0f97be1723766df9f8fe287417365febf54966
2013-09-12 13:09:05 +01:00
17fb3ac805 WaE: C4101: 'ex' : unreferenced local variable
Change-Id: If56eaa48c176138cd1b74da2f7f0aa71e3845894
2013-09-03 13:55:18 +03:00
d3ff876f3c GSOC work, small fixes after
Fixed some errors after the merge.

Change-Id: I8c0360d7fd04425a00dacb37f673d10efffa0ebe
2013-09-02 18:17:03 +02:00
755a74906e GSOC work, multiple fixes
Code completion: parser recognizes extended types ony when the checkbox is checked.
Fixed a crash caused by a misspelled uno type.
Fixed function CodeCompleteDataCache::Clear() to clear both internal variables.

Change-Id: I82fdd2e1cf749237e2e2de4a9a2fc7d07fb7eb4a
2013-09-02 18:17:01 +02:00
9b534193a3 GSOC work, behavior fixes
Code completition: left/right arrow keys handled. Left arrow dismisses the dialog when reaches the dot. Right arrow dismissed the dialog when reaches the next line.
ListBox appearance fixed.
TAB key can insert the first matching entry.
Autocorrect:
"Autocorrect Keywords" has been renamed to "Autcorrect" (in the UI, and the config file, after this patch a make dev-install is needed). Keyword case correction is not just capitalizing the first letter ( eg. Elseif -> ElseIf ).
Autoclose procedures:
cursor is being placed inside the preocedure.

Change-Id: Ie7e9ae96b49bd94562db83f96e1c4ad63ab3f3d6
2013-09-02 18:16:58 +02:00
b4319d8726 GSOC work, Extended types correction
Stucts can be autocompleted when extended types disabled.
Created two functions to make the code brighter. They extract the methods/fields from an XIdlClass and return them in a std::vector<OUString>.
I had to modify file basic/source/comp/dim.cxx, to check on UNO types when code completition is on.

Change-Id: Id93a6fe896424efb7868f6102985f59fb419b17e
2013-09-02 18:16:55 +02:00
61ee2598b1 GSOC work, code complete option, menu entry fixes
Menu entry is added under View->Enable Code Completition when in Experimental mode.
Fixed the call of funtion SbModule::GetCodeCompleteDataFromParse() to be called only when code completition is enabled.
Replaced the occurences of SvtMiscOptions to CodeCompleteOptions.

Change-Id: If0520123ab5f612d7d24fb98f8e9bf6881af76cb
2013-09-02 18:16:47 +02:00
728bc0518b GSOC work Window appearance fix 2 + code fixes
Added a function to select the first entry in the ListBox by default.
Selected entry can be inserted with the ENTER key.
Fixed some code in basic code generation class (SbiCodeGen).

Change-Id: Ia6eb43ee5661a0a3ae0b738b619f19972f019eac
2013-09-02 18:16:45 +02:00
5beb4be54c GSOC work week 5, some recent fixes
This week I've managed to fix the ListBox appearance. Also, I've modified the code: it gets the data on insert/remove/change, and gets updated only when the dot is pressed. This makes the data to be up-to-date. Next, I wrote a Split(OUString , char) function to do the nested reflection (It works, but it will need some tweaks later). Also, code generation is disabled for code completition (just a boolean value, maybe it could be done in a more "elegant" way, like the error supression).

Change-Id: I43d250c0a065351950ac6424dcd88266d70bcef3
2013-09-02 18:16:44 +02:00
025e7ff3e1 GSOC work week 2, getting infromation from variables and print on terminal
This is an early version. I use the BASIC parser to parse the source,
then the infromation is extracted from the symbol table built by parser.
Error reporting is suppressed, beacuse it is not needed fro code completition.
I placed my function inside SbModule, and created a struct called CodeCompletitionData, which holds the object's name, it's parent, and it's type name.
This function, SbMethod::GetCodeCompleteDataFromParse() is called from Basic IDE's Notify function, which updates a cache(actually, reassigns a viariable :) ).
Later, in the EditorWindow::KeyInput function there is a check wheteher dot key is pressed. After that, the actual variable (or word) is being looked up in the vector that holds code completition data. And finally, if it is found, it's methods are printed on the terminal.

Change-Id: Idaf19baa8f720b8b117a76dc3cc2f90dd04fd155
2013-09-02 18:16:42 +02:00
f97d794654 GSOC work week 0-1, allowing BASIC to recognize UNO interfaces
Introduced a new function calles IsUnoInterface in SbiParser to determine, if
a variable is a type of an UNO interface. It uses reflection.CoreReflection to
do that, on success it returs true otherwise false.

Change-Id: I18895127bcbd92dc7a25feb5d82a7d1343bde851
2013-09-02 18:16:42 +02:00
64b993e046 finish deprecation of O(U)String::valueOf()
Compiler plugin to replace with matching number(), boolean() or OUString ctor,
ran it, few manual tweaks, mark as really deprecated.

Change-Id: I4a79bdbcf4c460d21e73b635d2bd3725c22876b2
2013-08-21 15:10:35 +02:00
4c9a08e78b fix for fdo#62323 bad conversion of Hex strings for certain values
Basic hex literals are basic Integer ( e.g. 4 byte ) types with
-2,147,483,648 through 2,147,483,647 range. Interally the scanner
was using a long to form/scan the literal, this led to bad behaviour
on 64bit linux ( where normally long -> 8 bytes )

Change-Id: I1d0fcc55ed0eda636da1445329737d1684e69f33
2013-08-20 08:59:54 +01:00
392c5b2a70 Mark as const
Change-Id: Idd1d0641d5b7d8594f354c7d2e2a9093ecc6b2f7
2013-08-01 04:33:23 +09:00
bddd4d4598 Mark as const
Change-Id: I2746b92b1360c3c181879a81f653c44ef609f351
2013-07-22 21:03:55 +09:00
6a08067902 OUString convertion for unotools
Change-Id: Ifae7f344e3827875e32afa3cda23c771f5735707
Reviewed-on: https://gerrit.libreoffice.org/4659
Tested-by: LibreOffice gerrit bot <gerrit@libreoffice.org>
Reviewed-by: Fridrich Strba <fridrich@documentfoundation.org>
Tested-by: Fridrich Strba <fridrich@documentfoundation.org>
2013-07-02 07:31:30 +00:00
1946794ae0 mass removal of rtl:: prefixes for O(U)String*
Modules sal, salhelper, cppu, cppuhelper, codemaker (selectively) and odk
have kept them, in order not to break external API (the automatic using declaration
is LO-internal).

Change-Id: I588fc9e0c45b914f824f91c0376980621d730f09
2013-04-07 14:23:11 +02:00
caecf6102f SbiScanner::NextSym: check status after rtl_math_uStringToDouble()
For example, 10e308 is overflow, not 0 ...

Change-Id: Ib7d622865bfb73581732bda45c76e078ee7d05d0
2013-03-21 19:32:45 +01:00
ead0a6038b coverity#705627: fix memory leak
Change-Id: I4f73f77b27d2ed28a9f97757105c8a6cc5521b33
2013-03-09 17:59:12 +01:00
f5ca04caca Related to fdo#60724: correct spelling
Using the autocorrect list of LibreOffice
extras/source/autotext/lang/en-US/acor/DocumentList.xml

Change-Id: I8b93969bc0742c2e95b8b7db3c4c37691e8d3657
Script: http://pastebin.ca/2327716
2013-03-03 17:14:16 +01:00
1544c17ffd coverity#705626 and coverity#705627: fix memory leak
Change-Id: I68f43d07798ccb3fc3a5ab438992ac74f4cd262a
2013-02-28 06:29:35 +01:00
4f4e4e40f5 loplugin: improve indentation
Change-Id: Idb847766d93dc222d6c55889616da21eeac212ee
2013-02-25 17:59:40 +01:00
7f561b9d66 coverity#735398 Logically dead code
Change-Id: Iadb7fbd8a1fb1c535a3ed78d4b2f7120b29aeb75
Reviewed-on: https://gerrit.libreoffice.org/2270
Reviewed-by: Tor Lillqvist <tml@iki.fi>
Tested-by: Tor Lillqvist <tml@iki.fi>
2013-02-19 21:00:00 +00:00
2ce2fafa1b Some cppcheck cleaning
Change-Id: Idb380dbb7470dbdb371778ba0c486392cc55380e
2013-02-12 14:48:04 +01:00
fc27fec054 Fix Variable 'TimeBuffer' is not assigned a value
See http://nabble.documentfoundation.org/Cppcheck-TimeBuffer-is-not-assigned-a-value-in-basic-module-td4036591.html

Change-Id: I2d67cecf3530301d49c43bbe397c5e975b2816b0
2013-02-12 11:54:08 +01:00
c40cd8a4f2 Remove all occurences of RTL_* and ::rtl prefix from basic
This is a big commit, so thanks for your time reviewing this :)

Conflicts:
	basic/source/sbx/sbxscan.cxx

Change-Id: Ib9bc710b87475b5695764557321e5dcef25e5933
Signed-off-by: Miklos Vajna <vmiklos@suse.cz>
2013-01-03 10:07:39 +01:00
59074c09b8 remove use of #pragma optimize
All these are years old, guessing from some comments as old
as Windows 9x support. These workarounds do not seem to be needed now.

Change-Id: If67baa5cdefcec33b28696c764b1ed96143b7ccd
2013-01-01 22:39:15 +01:00
f52e8908a6 Some cppcheck cleaning in basic
Change-Id: I01ad0d95a94ede6998850937c58495920e7a4113
2012-12-28 18:00:02 +01:00
b05dc2e391 German comment translations
Change-Id: I0d169b7cd0f47b6986063d0cc0b6697b1d575e6a
2012-11-25 16:48:01 +00:00
af60316514 some i18n wrappers with LanguageTag
Change-Id: I2ceaa3159e8669c2c569fa8559c1e061dcad399d
2012-11-23 23:09:16 +01:00
9955dbebbd AllSettings with LanguageTag
Change-Id: I710ae66e51139662eb442b681fdf9cc9d158551d
2012-11-22 12:34:59 +01:00
27239ad230 basic: String -> OUString
Change-Id: I42479b4bade5111e38d69f04c889c166f340d5ba
2012-11-07 02:14:53 -06:00
d92814f462 basic: preliminary cosmetic clean-up
parsing 1000s of line of code is hard enough without having to fight
with weird indentation and irregular formatting.

So as the review progress, in order to follow the code, cosmetic changes
were made...

In order to minimize the task of the reviewers and allow them to
concentrate on what matter, an effort is made to collect these
cosmetic changes into this separate commit.

Change-Id: I3c9b04a0150d0d0a048c2e976fe24de4f2b6b98a
2012-11-03 20:24:28 -05:00
38968e2963 WaE [loplugin]: statement alignment
Change-Id: Ia09c74e02d261de5946e6d7e0530a7913e0bcb8d
2012-10-10 14:59:24 +03:00
407509c058 sal_Bool to bool
Change-Id: I75dd089b34c94831bfdfd0e02585af7609013a08
2012-08-22 19:25:08 +09:00
a8647dd030 sal_Bool to bool
Change-Id: I427e9bb30cab4698a2495de7445a4a4982abd7b4
2012-08-20 09:47:25 +09:00
38f3fe0432 sal_Bool to bool
Change-Id: I6206ee7e17e12388ea644123e180842df3e3a7ee
2012-08-19 17:55:27 +09:00
1f224b02c8 sal_Bool to bool
Change-Id: Idb5ef3cebdd45bd91f7c0ae34e422fd651d395c9
2012-08-14 07:37:19 +09:00