Commit Graph

384 Commits

Author SHA1 Message Date
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
533194a6b3 bErrors was always true
Change-Id: I193029e1fb2434161679498fa0ba7e1c7c0ab3ba
2012-08-12 09:16:59 +09:00
1817cf60d1 sal_Bool to bool
Change-Id: I61a6675df622232923a827fc20bf121dd03cd7da
2012-08-12 09:16:58 +09:00
2eb40e3cec Remove a member variable no one reads
Change-Id: Iacb037bebaf1c3d77ab61be6342b42319b8a2e7b
2012-08-09 22:33:03 +09:00
df579b1f66 Fix "Boolean result is used in bitwise operation"
Change-Id: Ifed0d87da3ac5bd19a0285f1074f2eeec5717f05
2012-08-06 16:45:47 +02:00
621145a777 sal_Bool -> bool
Change-Id: I49749f327d6a9c3661ef9bd684647e0a45b9203a
2012-08-03 10:29:31 +09:00
63c508e3e8 re-base on ALv2 code. Includes:
118568: switch to using ucpp
    Patch contributed by Juergen Schmidt
    http://svn.apache.org/viewvc?view=revision&revision=1209396
2012-07-18 09:29:19 +01:00
104261010a some UniString->rtl::OUString
Change-Id: Ie69b30094da25df23a36baca2c7723d6a41f48c3
2012-07-09 12:16:56 +01:00
bccf34c19a ditch String::CreateFromAscii
Change-Id: I2b482bd323ac510629c5ee31868010b7cd6ce691
2012-07-03 21:24:35 +01:00
9e0cbe5eb3 some pesky XubStrings
Change-Id: Ib4095dee416cab6d954e1612d2e3f6e2d4464f48
2012-06-29 11:20:32 +01:00
ba23ece286 probably the last uses of the one argument String::CreateFromAscii variant
Change-Id: I36aab317da2f69f12aaefc24895ad9eaa6b69a7c
2012-06-28 13:53:36 +01:00
2110397670 Convert SV_DECL_PTRARR_DEL(SbiSymbols) to std::vector
For reasons I don't understand, the compiler would get uncopy
if I tried to declare the destructor in the header file.

Change-Id: I67fa7941da2f0ee08ae10bf350fb1f3bf1397410
2012-06-12 23:25:11 +02:00
7d042c50f5 use rtl_ustr_getLength instead of a temporary string just to find length
Change-Id: Ibbf777e57af6b98611cb5dce5a31517de80305b7
2012-06-12 13:35:49 +01:00